continue the filter chain with new events if filter cancels original eve...

This is a proposed fix for #793.

It changes the return condition on the `filter` AST: only break the chain if the filter cancels the event AND the execution does not generate new events. Otherwise proceed with the accumulated events.

I added a test to the split filter that failed before but now passes.