Move message logic to Message class