Buffer helper performance

The API of Buffer.read* and Buffer.write* functions is clearly unable to be optimized well, but this pull request does increase the performance of the integer reading and writing performance by around 10-30%. Everything should behave exactly the same other than just running faster.

Additionally, the benchmarks for these functions were not really measuring the functions they set our to measure. More than 90% of the run-time was consumed by running the benchmark code itself. This pull request also fixes that. Of particular note, this pull request did NOT cause a 20x performance gain. To evaluate its performance gain, cherry pick the benchmark changes and run benchmarks against the unaltered read* and write* functions then apply the rest of this pull request.