Modified the Message module/class to a more functional style. Actual
message types are now private and can only be manipulated with the
module functions.
Added basic support for an SMTP service to recieve messages.