filter support; refactored various misc methods out of class and into trait