refactor filesystemwatcher so only it's configurable and only runs in DebugMode by default