Start of messaging system.  Need to break this up into files next.