fixinf property class super-class to include combinations.

Now we truly have a way to have a *type* which denotes a set of properties is present in a cursor, but the cursor could have more properties that the set given. The type of properties(a,b,c) is a substype of properties(a,b) since anything with a,b,c also is something with a,b