major revamp due to new Message constructors