support subclasses of IO and StringIO
Allow Fog Files

Add some tests
Merge pull request #8 from mrloop/string-io

String io and Fog files.
Pass needed objects to functions
Merge pull request #9 from mrloop/string-io

Pass needed objects to functions