I notice that you're using a polling thread keep track of modification times. I know that linux has inotify: <a href="http://github.com/seb-m/pyinotify" rel="nofollow">http://github.com/seb-m/pyinotify</a> and OsX has something similar with FSEvents: <a href="http://pypi.python.org/pypi/MacFSEvents" rel="nofollow">http://pypi.python.org/pypi/MacFSEvents</a>
I quite like <a href="http://search.cpan.org/~drolsky/File-ChangeNotify-0.17/lib/File/ChangeNotify.pm" rel="nofollow">http://search.cpan.org/~drolsky/File-ChangeNotify-0.17/lib/F...</a> for perl. It's cross-platform (backends for linux, OSX/BSD and Win32 afaik), and is very straightforward to use.