added basic structure to Message
added a lot of functionality