File options for IO methods
Split from https://github.com/pandas-dev/pandas/pull/27899. How should we handle options to be passed to the `open` call (like `encoding`, `errors`).

A few options

* pass through `**kwargs`
* a "storage_options" kwarg that's a dict with some specification

Want to thing about things like S3, etc. too.