Fixed problems with connection class:
- Strings now have terminating '\x00' bytes stripped off
- will continue trying to connect until successful
- Handle checksum errors with a registered error handler

Split the generic portion out from the Dirsync specific portion:
- Connection
- Message

Implementing a generic database class that can act just like a dictionary. This will be used for the client state. Still need to add json support.