Classes representing the various property types as well as supporting data structures for the FO tree.