Finished TestProfileBlueprint

* [app] _validation_error() uses new RequestDidNotValidate to return a response
* [utils.exceptions]
  * Modified the two API classes to be more descriptive, and to use get_json()
  * Added RequestDidNotValidate class
Use some of the Flask builtins

Not actually related to feature/66-testing, but relies on said branch.
tentd.tests.documents.test_auth
Ignore entity values given to url_for in single user mode
Ensure Enitities always have a core profile

* [documents.entity]
  * Automatically create a core profile on save
  * Simpler new() classmethod using set_attributes()
* [documents.profiles] Default identity in CoreProfile
* [utils] set_attributes() function
tentd.tests.documents.test_entity