refactor io "read"-type functions into a single function
there's a few of these floating around basically to dispatch on different kinds of possibly ambiguous string/filename/url input. would be nice if there was something in `common` or `util` that just does what you want. this may be overly optimistic...
