support for message expressions

WIP