mmt: flush binary message stream before dumping state
mmt/mmaptest: updates
mmt/mmaptest: add new test case which triggers assertion failures
mmt: remove invalid assertions

They can fail on perfectly valid state. We cannot check whether
positive and negative regions touch because:
- there's only a limited number of negative regions (10), which
  can be overwritten when needed
- mmt_add_region does not bother splitting negative region when
  new region overlaps with existing negative