
Algorithm for Server:
=====================

- create socket
- become a daemon
- listen on the server port
- when a connection request is received:
  - fork a new process
  - child:
    - set yyin, stdout and stderr to point to the client socket received from accept
      (use fdopen, freopen)
    - start yyparse (ends at eof)
  -parent:
    - wait for other clients to connect

Algorithm for Client:
=====================

- open socket to server
- 'select' on stdin and server socket
  - if data available on stdin:
    - if(quit) 
      - close socket and exit
    - if(load)
      - send contents of file to server
    - default: 
      - send getline to server  
  - if data available on server socket:
    - read data and display



