second recursion issue resolved

calling __enter__ from the __exit__ function was kind of
counter-intuitive, yeah?