Remove requirement for the JWT library, since we are not embedding it in the library.
Added ClientAssertionTypeInterface as per bshaffer's suggestion in #20.
Added tests for JWT bearer tokens.
Embedded JWT encoding/decoding library.
Fixed various small issues with JWT bearer grant type.
Updated core library code to use ClientAssertionTypeInterface's presence to decide whether we should check for user credentials.