I'm wondering if maybe we still have two concepts: the ```HttpMessage``` holding what needs to be sent and the ```MessageSender``` holding the logic of sending the message?