use fs.watchFile for more stable file watching