cleaning up Main and removing an unreasonable assertion in IBranchPoint