Refactored aligner to work on arbitrary GrPaths now, with the exception of the optimizing aligner, which only has to work for direct dependents and objects (only used by semantic metrics atm). Refactored FeatureExtractors to work on GrPaths.