Allow filtering by events' type

Per #85, I have also [explained](https://github.com/cvut/sirius/issues/85#issuecomment-67648254) the reason to use `event_type` param.
Actually I think I should remove the implicit eval from `core_ext/then`, but I guess this class is a great candidate for complete refactoring.