Better return codes documentation
Massively improved test suite
Using JSONResponse as default
Moved all track relationships to Track
User resource
Returning a 409 on DB write error
Defensive programming
Returning 400 if information is missing

In this case on a PUT to the /artists resource.
Tracks can't change file

If a track was created with a given file, it cannot be changed. The resource
has to be `DELETE`d and a new track created.
An album has no artists

This relationship is calculated through the Track model, cannot be set
directly.
Added display_name to User model

This will be a random string defined by the user to show instead of the user or
id. Can be null.
Merge pull request #142 from tooxie/tests

Massively improved test suite