IMPL: implement throughs and forbidden inner merges
FIXUP: add tests and debug
TEST: check non-sequent throughs
FIXUP: fix test
FIXUP: fix implementation to correctly store  through mark
DOC: fix TODO and diagnostics
DOC: corrected description
DOC: comment a bit