track multiple file events

This should create new listeners for each event type. You can now reliably set multiple events. Fixes #8