Fix Runloop crash for good. Make sure dead streams are not in the runloop.

I'm not sure if this is the best method but removing the input and output streams from the runloop when they are about to dealloc'ed is the best way to insure it will never crash.