Move MessageProcessor definition to EngineM.

The changes in the Engine itself are trivial, the real work is in the
interpreter.