Adding JSON Web Token support

Heres my first go at it.. Feel free to tear it apart :)

addresses #140