Refine gitfs tests

This adds a tearDown to ensure a clean copy of the repo for each test.
In addition, it removes the dependency on lexicographical order by
running a find_file() inside the two tests which require it in order to
ensure that the file exists in the gitfs cache.