I have introduced this getter to avoid new constructors with FS parameter in GitIndex and RefDirectory. But it's a bit ugly anyway as RefDirectory member has to be created after assigning FS member. So when you agree to simply add FS parameter to existing constructor of GitIndex and RefDirectory, I'll happily remove this getter.

If an application is able to choose correct FS for Repository construction, it is probably also able to choose correct FS for FileTreeIterator. If managing the FS outside of the Repository should get really to annoying in the application, we can still discuss whether to re-introduce that getter.