Add FileSystem.watch and FileSystem.unwatch; remove FileSystem._scanDirectory and FileSystem.setProjectRoot