extracted filter logic in separate object
added test and fixture for filter
added missing changes for filter test
extracted method mocking in separate class and exposed methods of mock to have a convienent interface for batch operations
extracted method mocking in separate class and exposed methods of mock to have a convienent interface for batch operations