Place events generated by a filter after the original event

This is a fix for an issue raised by this gist https://gist.github.com/jsvd/b6f38753ba83462892b4

Also, the specs that test the combination of multiple filters had no proper place so "spec/filters/filter_chains.rb" was created.
```ruby
event.cancelled? ? new_events : new_events.unshift(event)
```
?