Modification service refactoring

Removing the old modification service and replacing them with a single FileModificationRegistry and (optional) Java7 file watcher thread.

I did a very quick perf test which seems to suggest this is slightly slower than beforehand (which doesnt 100% make sense) so we need to get a better idea of perf implications before merging this.