[#6686] Implement an indexless last_commit_ids for Git

NB: This is not fully indexless, since it still needs the model data for
controller dispatch and pulling the commit summary info (though the
later could easily be gotten from git while getting the last_commit_ids
just by changing the pretty=format param, it would just require more
refactoring to surface / cache it).

Signed-off-by: Cory Johns <cjohns@slashdotmedia.com>
[#6686] Added script to benchmark new git last_commit_ids implementation

Signed-off-by: Cory Johns <cjohns@slashdotmedia.com>
[#6686] Refactored prefix_paths_union and added tests

Signed-off-by: Cory Johns <cjohns@slashdotmedia.com>
[#6686] move other performance testing scripts into scripts/perf/
[#6686] add log for usage of ls_old so we can determine if it can go away