0.1.0 - Added error handling. Streamlined edge cases behavior.

@felixge There were few problems similar to #38 and #40,
so I added error handling and made it a little bit more verbose.
Changes are mostly backwards compatible for real life use cases,
but it breaks on small number edge cases, like if you call getLengthSync with attached stream(s),
before if would return wrong data and now it would emit error.
So I bumped the minor version.

Please review if you ok with the direction it's going.
Thank you.