renamed api.js to users.js to reflect the endpoints contained and moved the endpoints routes to /endpoints/ folder
Added handling for `Allow:` header in errors
When editing a dashboard, ID and Code must not be set in the body.
When creating a dashboard, ID must be set in body
A new code will be generated when a new dashboard is created
The API code checks for duplicates before creating a new dashboard, will return 409 Conflict if a dashboard with the same ID exists.
The datastore's create method will not check for duplicates
Updated the tests for the new behaviour
Simplified the tests