major: moved utils into commons, added interfaces for types/paths/keys, changed tests, changed ComProp behaviour, added path, changed predicates