Patch Set 5:

Fully initializes the cache's ignore map once upon creation. Afterwards, listens for changes to .gitignore files, and updates when needed. Does not parse ignore files until they are needed. 

Is this the direction that EGit wants to take with .gitignore? Attached patch works with IgnoreAction. If a gitignore file is modified from commandline, it will need to be refreshed before the changes are noticed.

I am currently working on automated tests, and then will add modifications to also listen to updates to the .git/info/exclude file.