Implemented Filter

Passes FilterTest, but should check if getChildren() and setChildren()
methods are correct.