Add verified flag for users.

Adhere to coding standards.
Create mapper and entity for user tokens.
Add verify registration view and template stub.
Create user token on register.

Create email on register.
Merge branch 'master' into verify-registration
Implement verify registration method in user service.
Implement and register verify registration controller.
Merge branch 'master' into verify-registration
Create general purpose email service.

Fill out default fields in email config.
Inject email service rather than mapper and use it to create email entity.

Inject verify registration view also.
Merge branch 'master' into verify-registration
Modify controller to send 404 when appropriate, return array to convert to JSON.

Register route using correct controller.
Inject URL generator into view; implement url function.
Prevent using expired token.
Get entity property correctly.
Add new field to unit tests.
add phpcs to .travis.yml
Return specific status codes depending on the exception
Remove unnecessary constant.

Add DocBlocks.
Fix property name.
Modify mapper service name.
Send token as POST parameter.
Get token from JSON payload rather than route parameter.

Add todo.
Implement reset password methods in user service.

Extract createUserToken method.
Create reset password controller.

Restrict verification to the appropriate token type.