Moved overall packet header building

The packet shouldn't be responsible for adding the overall header and
checksum, the client can do that before sending it. This should make the
implementation of different protocols (MsgrServer) easier and cleaner.
BaseClient/DefaultClient abstraction

Client was actually what should've been the DefaultClient
Added offset parameter to Packet constructor

The server class has to tell the packet where to start reading.
Added msgr base classes
Added msgr server start bat
Removed debug logs
Changed tons of things, added handlers, sending, database, manager etc.