Fix race condition in file watcher

File watcher events usually end up being called on a different thread,
so we can't clear the existing LinkedLists, have to create new ones each
time unfortunately