contextlib2 future