- use NSPredicate to filter content
- added "Filter by agent" functionality
- code consolidation