[WIP] Add JWT token authentication for user

Considering this a work in progress for now, want to have some open commentary/cleanup before final merge.

This pull request allows the user to authenticate using the [JSON web token](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-31) standard.

When a user authenticates via `/login`, he or she will receive a token which can be used for authenticating later requests. 
I think we should only verify token for actions requiring changes to the database.