Cleanup WSGI side
musik.db: Improve SongExists exception.

It now is exposed by the module and it provides the song that is conflicting in the exception.
This should let us create a merge screen at some point.
musik.db: Track the version of the library.

We will use this to implement a simple ETag cache-control for the user agent.
musik.application: Improve REST API

GET for /songs now as ETag caching. POST for /songs is closer, still missing file handling.