added isopen(io) for IOStream, IOBuffer, and File

We already had `isopen` for some `AsyncStream` types.  Pretty trivial implementation.

This function is useful for passing IO objects to Python (since Python's `IOBase` [interface](http://docs.python.org/3/library/io.html#io.IOBase) includes an `isclosed` function).