Fix method name in BeaconMessage

getUUID() (which returns the UUID of the Module sending the Beacon) was
shadowing getUUID() of Message which returns the UUID of the Message
Add remote UUID to ConnectionEstablishedMessage
Remove old classes
Allow MessageHandlers to throw Exceptions
Change ShutdownFuture to FutureNotifier
Introduce new package
Add ShutdownFuture
Add ServerChannelFactory
Add ServerChannelManager
Add tests for ServerChannelManager
Add ClientChannelFactory
Add ClientChannelManager
Add HelloMessageHandler

Handles incoming HelloMessages. If the handler is the master it checks to see
if there is an existing connection and decides whether or not the new one
should be dropped.
Add ConnectionEstablishedMessageHandler

If this is a slave and it receives a ConnectionEstablishedMessage
this handler will mark the channel as active.
Add ClientChannelInitializer
Add HandlersByApplicationID

HandlersByApplicationID provides an easy way to specify multiple handlers
that are distinguished by the Application ID they belong to. It also allows
to specify a default handler which will be used if there is not handler
for a given Application ID.
Add MessageHandlerManager

MessageHandlerManager is used to provide a hierarchy of MessageHandlers with
fallback to default handlers or less specific handlers should no MessageHandler
be defined for a given Message class.
Add ResponseFutureManager

Manages FutureNotifiers that are used to inform about Responses that were
received after sending a Message.
Add ClientMessageDispatcher

The ClientMessageDispatcher takes incoming messages, calls the apropriate
MessageHandler and sents the Response back to the sender of the message.
Add ResponseInvalidator