Bugfix: clear exception state in open_func and create_func
This is a small bugfix that clears the exception state after trying
(and failing) to read keep_cache and direct_io. Not doing this will
make the exception appear in a random other place.
This can easily happen in code that uses PyErr_Occured(), the code
being checked might have not triggered an exception, but
PyErr_Occured() will still find the getattr() exception that was
not handled here.