Add pgbot.system for controlling the bot lifecycle
Add a system param to start and stop
Update connection/create to be side-effect-free
Add :host and :port to the connection map
Clear out connection-test
Change a doc to third person present indicative
Fix a typo in the connection map
Add connection/start
Add connection/stop
Use recursion instead of an atom to open the Socket
Grab :channel as a boumd param
Bind a new connection value
Return the connection from start
Move register and make it private

I also converted the outgoing messages to maps instead of calling parse
on strings.
Use a message map instead of calling parse
Move output.clj to logger.clj
Move get-line up and make it private
Move send-message and ping-pong up in the file
Rename trigger-event to trigger
Make events an atom