feat(filters): add general purpose filters in support of pure fields and methods

Addresses: #359, #394, #397, #757.