Benchmarks and fixes

Thanks for writing the package.

I added some additional benchmarks, and expanded the write-then-read test. This exposed some bugs, short reads from the Reader and large blocks emitted by the Writer.
Hrm. It probably would. I'm not sure if that would potentially make the contents `w.dst` accessible from outside (that is, it would be a subslice of the argument to `Write`). That's probably not even a huge deal.

Anyway. Yea. It probably shouldn't be copying memory in that case. I'm writing a fix for that.