Draft: Fix invalid sfid bug on second connection to a destination bundle.
See #166 (closed)
This MR right now is a single code change which almost but not quite fixes the bug and a lot of tests.
Right now, the check_bundle test has inconsistent results and seems to hit a lot of issues. I don't think I'll be able to keep working on this alone. I suspect I may be doing something wrong C++-wise in the test but also there seems to genuinely be a timing issue.