Authentication

In conjunction with 1749aa32c25d8eee9ca0753cb55bd7d134f320b7, these commits add authentication functionality to the project.

1. User calls `stack-authenticate`
2. User approves the application
3. User is redirected to our `gh-pages` branch (thanks, @Bruce-Connor!)
4. User is instructed on that website and within Emacs to paste the displayed code into the `read-string` that is waiting for it
5. Access code is cached in "auth.el"

Unfortunately, this can't really be tested with CI since it requires authenticated user interaction.
Do we need this permission for anything? If we do, that's fine, I just want to make sure.