Change database attribute types to "newtype"

Changed the database attribute types (FilePath, Title, TrackCount,
etc.) from "type" declarations to "newtype". This makes the
Database module interface more strongly typed, but did have the
unfortunate side-effect of requiring separate Convertible
declarations (to/from) SqlValue for each attribute type.
Replace getDatabaseRef with openDatabase and createDatabase

The old getDatabaseRef function would open a database if it
existed and create one if it didn't. In order to give calling
code more control, there are now separate functions for opening
and creating databases. createDatabase will return an error if
the file already exists.
Add "deriving (Show,Eq)" for CreateError and OpenError.
Add main "Gramophone" module.

Gramophone.Gramophone currently just re-exports
Gramophone.Database and defines initFiles function.
Remove a depricated Yesod type. No change in functionality.

Changed RepHtml to Html to get rid of compiler warning.