Raise hands if you think std::fstream::eof sucks

Fixes #1