617 handle file deletion

This shall fix #617 and #958.

Files in the repository can be deleted now via the web interface. 
Then, their ontologies will be marked as 'not having a file' (`has_file`).
This flag is stored in the database, but only for the head-version of an ontology (as a cache).
One can still ask for a specific commit, if an ontology has a file (`has_file(commit_oid)`), which then accesses the hard drive.

Deletion via ssh is detected and the flag is set in that case.

In the view (ontology#show), the nonexistence of a corresponding file is indicated by text and the absence of a link to the file.
Style/GuardClause: Use a guard clause instead of wrapping the code inside a conditional expression.<br>Style/SpaceBeforeBlockBraces: Space missing to the left of {.