PathConstraint
PathConstraint serves as the abstract base of constraints
            that operate on paths and provides several helper methods.
            
                
Modifies the current instance to be case-sensitive
            and returns it.
            
Construct a PathConstraint for a give expected path
            
Canonicalize the provided path
            
Test whether one path in canonical form is a subpath of another path