Add base predicate type and T_Z terms
Move predicate types into their own directory
Remove typeclass for predicates
Include expression evaluation in type reflection