basic I/O design - #12, #15
Merge pull request #19 from ahebert/master

basic I/O design - #12, #15