added filter classes and interfaces, added some other classes