moving more message building responsibility to Receiver class