Rebased and dropped the tests. MFT_MESSAGE_COMMAND_DRAIN messages are now sent for each input stream, as some local tests suggest it should. Stream have a draining flag, which is used to decide whether to send EOS downstream after ProcessOutput has failed, the flag is reset when the session (re-)starts.