Make small improvements to exceptions
Create Stream#pushBack() method
Refactor VersionParser to improve error handling