refactor to make structure more clear

- update readme with a more clear explanation of whats
  going on in general, add missing links
- websocket methods are now on the server rather than the
  app object
- server now emits open, message, and close events for
  giving info about client socket connection states
- server now correctly manages the # of  connected sockets
- client example updated to work with new api and to show
  the open and close events on the server
correct link for publicist-middleware in readme
add server close log to client
edits and fixes for the readme
add a test for pathologist
readme link to gemnasium
Merge pull request #9 from carrot/refactor

Refactor