Introducing *Message{} struct. Replaces interface{} approach.