API Token Authentication

Section related to creating a token-based authentication on the server. Here are the steps:

- authentication feature and first scenario
- deny access if no user
- translate the error message
- send header in Behat
- uncomment out ApiTokenListener code
- uncomment out ApiTokenProvider and find the token and the user
- get logged in user from ProgrammerController, not weaverryan
- enforceUserSecurity and enforceProgrammerOwnershipSecurity
- Bad scenario token
- add application/problem+json to ApiEntryPoint
- ApiProblem in ApiEntryPoint
- create ApiProblemResponseFactory and use it in ApiEntryPoint and listener

We do not dive into the Symfony security system very far - instead we provide a lot of the classes, and then tweak some things.
You're right. I haven't done this yet, but I might when we record. My thinking is that this is more about Silex than REST, and will take a few steps (defining the key, using it & passing it to the ApiProblemResponseFactory, then actually using it). So as you can see, I'm afraid it may just be a little too much work for something not fully core to what we're teaching. If you disagree, let me know - I trust your "teacher" opinion.