let history recognize file renames as a change
recreate basic diff infrastructure
introduce Commit class for history, lazy computing of deltas
delegate commits to git
Move filepath from ontology to ontology_version
remove debug log
detect moved ontologies, save them properly
fix files controller's ontology query
don't depend on ontology_version_id to be set correctly
further steps to move path into ontology_version
adjust parse-specs for ontology_version_id check.
handle local files for external repository

Probably only needed in tests, but may prove
useful for other usecases too.
set ontology_version_id always.
create update_version! method and use it

This includes setting the version, if a new version
is created through the update_version controller action.

Also compact is used on versions before iterating to
filter out nil-values (result of versions.current being nil on some
test-ontologies).
define current_version method and use it

current_version will use ontology_version, but will
fallback to versions.current if necessary.
use path in an ontlogy if it has no version
cosmetics
fix missing versions in factory
add specs for permissions check for git/ssh.
pass specs and add private_* support to git/ssh.