Built a cleaner implementation of FilterInterface and FilterBase.