Added filter classes and tests

I tested them all for an hour, they seemed to work. Although I haven't
tried them using the robot.