Adding a filter() method to collections that takes a callable/closure