Major overhaul (#2) * Adds ExpressionExtensions.Combine for combining multiple predicates with an operator * Adds Predicate utility class for easier predicate definition * Adds PredicateGenerator.BasePropertyPredicateHandler, abstract class for defining predicate handlers * Adds PredicateGenerator.RangePropertyPredicateHandler, abstract class for defining predicate handlers for ranges/between * Adds TargetPropertyNameAttribute for defining the target property a filter property is mapped to * Adds TypeExpressions, utility class for retrieving expression for types * Updates documentation