Since the data is stored in the USN Journal and the user simply provides the state of the USN Journal when he last requested information from it, I don't think there is a thread safety issue. This wouldn't be a singleton and the USN Journal is persistent on the volume.
Before I supply a working project on CodePlex, I still need to solve the issue with getting a filename given a file reference number. It annoys me to no end to know I've seen and used it before...
The only question I have about CodePlex is whether we'll get the kind of review we want? Will enough folks visit the project who have a serious enough interest that they'll contribute?
StCroixSkipper