Ensure that ImportedHitsFiles are unique by filename

Conceptually there is only one hits file at a given path; if the
content has changed, then the hash will also have changed and it
will be reimported. This enforces this constraint in both the database
and the model.