Further work on the filter class. Not tested. Probably not working