added base64 encoding and hex/b64 decoding capabilities