Tightened up setting of outcome variables.

Some expressions were setting OVs directly in the state,
which was not working correctly for completion_status.
This is now fixed, and I've updated the JavaDoc for
ProcessingContext to warn against this mistake in future.
Merge branch 'test_implementation'