Rewrote TCP socket opening and binding
Pass in port to server::Server()
- Stop using perror like a retard
- Add common ipaddr() function
Solve some sockaddr & sockaddr_in shenanigans
Begin attempt to generalise message processing

Hopefully this will let the new MessageProcessor class be used in
both the server and client code.
net::MessageEntity -> json11:Json, not std::string
Implement message dispatching

dispatch() is what is ultimately responsible for calling the handlers
for each message. Arguments given to `dispatch` are passed through
to the handler with an implicit MessageEntity first argument.
Type alias for MessageProcessor handlers
Include common_net for the client
Pass pointer to processor instance to handlers

So that handlers have the ability to respond to the messages they
receive.

The proccessor pointer is the first implicit argument to the handler.
Add support for "muted" message processor handlers

They're called "muted" because they don't take a pointer to the
processor instance as the first argument which means they're unable
to respond to the messages they handle.

This is mostly useful for saving keystrokes when writing handlers.
Merge branch 'master' into message-processor
Add docs for MessageProcessor class
Enable tree view for Doxygen
Remove dogeumentation
Log Doxygen warnings and errors to file

This is in preparation for Jenkins integration.
Add utility for converting Doxygen logs to JUnit reports

... theoretically.
Tweak the JUnit messages a little
Hardcode basename for JUnit classname
...
CLAP    CLAP    CLAP
...
CLAP CLAP CLAP