Add EOF handling in Stream class.

Adds simple (way too simple) EOF handling to Stream::ReadRune method.
Add abstract Stream class.

Adds an abstract `Stream` class which can be used as basis for future IO
API.
Minor file stream fixes.

Just some fixes which slipped through the PR examination.
Merge pull request #96 from peelonet/abstract-stream-class

API: Abstract stream class.