contextlib: Add simple contextlib port