Changed the Message classes a bit and created a new MessageImpl for generic messages.