First round of cleaning up Filters.

Same reason as Directive, Filter initialization code was clearly a
result of my lack of understanding of what I was doing. Containing the
ugliness in one place for now, so I can clean it up later.