Sorry, my understanding of context managers is kinda limited.  Can this actually be used as a context manager, (that you can use  with `with`)?  (http://docs.python.org/2/library/contextlib.html)