tidy up get Commit as directed graph - in particular to reduce
complexity and stop repeating edges when passing in multiple commits
deleted unused class
Started to simplify js package
tidy up names and copied code
factored out commit creation from DataStructur, which fixed one of the
two failing unit tests