Extract TaskFilter to its own model