Rework size and index calculations.
Rework size and index calculations.

Change all decode writes to happen via a slice rather than via
Vec functions.

This has a minor performance degradation on 50b decodes (a couple
percent) and a harsh penalty on 3b decodes that don't re-use the buffer,
but if you're doing that, you probably don't care about performance. On
the upside, we get 5-10% perf wins on larger decodes, and a few are now
hitting 2G/s. (All numbers relative to master)

marshallpierce/rust-base64