Much better handling of messages