Theoretically working Auth

- Detect authentication by loading /v1 on init
- Send the user through GitHub OAuth flow
- Retrieve GitHub client_id from `x-github-client-id` header
- Send `x-api-no-challenge` header to prevent `www-authenticate` header in responses
- Send response `code` to `/v1/token` and get back a JWT token
- Store token in browser session storage
- Send JWT as `Authentication: Bearer <token>` in subsequent requests
- Go back to login if an authenticated API call returns 401