Move source files in their own directory
Move some types into common headers
Add helper to allocate and initialize a message buffer
Add utilities to draw using the comm link