filters have been updated to follow the callback pattern; few tests have been added