I think the stackoverflow suggestion just makes things more confusing so I'm going to keep things the way they are right now.

I think @robotoer Is adding some code in another commit that sort of acts like a try-with-resources that might help us make these sorts of things cleaner.