Fix uncaught exceptions after testing with bad tokens

Avoid IndexOutOfBoundsException when decoding token string lacking 3
parts.
Avoid ArgumentException when deserializing the headerJson
Avoid ArgumentException when deserializing the payloadJson
Help developers troubleshoot by include the values that cause
SignatureVerificationException in the exception message