Remove GeoTools 2.2 Filter and Expression interfaces

Delete GeoTools 2.2 Filter interfaces
Delete GeoTools 2.2 Expression Interfaces: only way to be sure we won't have a class cast exception.
Cleanup deprecated Expression interfaces and unused classes
Remove GeoTools Expression getType() and getValue( feature ) methods
Remove remaining methods that assume GeoTools Expression - this required the addition of Filters.getExpressionType(expression) utility method.
Filter implementations no longer need factory for ant,or,not.
Remove GeoTools FilterFactory and FilterFactoryFinder.
Remove FilterVisitor and FilterVisitor2: It is time to move on
Remove Filter.filterType
Safe cast to geotools expression, will return null if not possible.
Initial Filter cleanup of and, or and not methods.
Feedback from review LogicFilter, SortyBy, SortBy2 and SQLUnpacker
Merge pull request #434 from boundlessgeo/filter_cleanup

Filter clean up (GEOT-4785)