function pushByte(b) {
    output[outLen++] = b;
  }
Base64-decode a string to a Uint8Array.

Note that Uint8Array is not supported on older browsers, e.g. IE < 10.
@see http://caniuse.com/uint8array

In base-64 decoding, groups of four characters are converted into three
bytes.  If the encoder did not apply padding, the input length may not
be a multiple of 4.

In this case, the last group will have fewer than 4 characters, and
padding will be inferred.  If the group has one or two characters, it decodes
to one byte.  If the group has three characters, it decodes to two bytes.

TODO(sdh): We may want to consider renaming this to `decodeToUint8Array` for
consistency with `decodeToText`/`decodeToBinaryString`.

@param {string} input Input to decode. Any whitespace is ignored, and the
    input maybe encoded with either supported alphabet (or a mix thereof).
@return {!Uint8Array} bytes representing the decoded value.