The MessageContext was created as an adapter implementation to use
message objects as contexts within which filter expressions could be
evaluated with no coupling of the Message and Context classes