Use AOSP ByteArrayPool to try and avoid buffer GC.

Re-using buffers can help avoid GC and make things run more smoothly when streaming data.

squash! Use AOSP ByteArrayPool to try and avoid buffer GC.

Copy tests over and attempt at better formatting.

squash! Use AOSP ByteArrayPool to try and avoid buffer GC.

ArrayDeque is <= API level 9 :-(

squash! Use AOSP ByteArrayPool to try and avoid buffer GC.

Another attempt at formatting.

fixup! squash! Use AOSP ByteArrayPool to try and avoid buffer GC.

Indent code properly attempt.