Watch directories instead of individual files.
Watch directories instead of individual files.

This is based on @jeffreylin's `DirWatcher` implementation:
https://github.com/jeffreylin/jsx_transformer_fun/blob/master/dirWatcher.js

The benefit here is that we end up with many fewer open directories/files,
so we run a much smaller risk of hitting the EMFILE limit.  Directory
watching also appears to be more robust than watching individual files,
because deleting and recreating files doesn't interrupt the watching.

Closes #18.

kwangkim/commoner,benjamn/commoner,facebook/commoner,reactjs/commoner