Add support for decoding unpadded base64 strings

When attempting to decode a base64 string with invalid length, pad out the string with `=` to make the length valid