tweak the Base64 implementation

- move the encodeInternal/decodeInternal methods into the inner
  "state" classes

- tighten up the inner loop of the encoder and decoder a bit, saving
  about 5% of time in both cases

- improve javadoc

- other little fixes

Change-Id: I72e0ce8502c664a32418cea04636ccdbf4fec17c
4 files changed