Base64Url encoding/decoding (RFC4648) - JavaScript implementation