Project restructuring

Moved all message types in a separate Java package and split the publisher module into two separate module: one for the protocol and one containing the actual implementation.