Merge pull request #2227 from jakub-/var-length

Clean up idSeekLeafPlanner
Changed HeuristicsService interface to single heuristics() method returning HeuristicsData

o Fix equality and hashCode for heuristics data containers
o HeuristicsDataCollector => HeuristicsCollector
o Introduced RollingAverage.Parameters
Remove unnecessary check for file path existence
Change cost and cardinality metrics to always return Double
Renamed methods in GraphHeuristics API
Change tests so that the heuristics can be mocked easily
Rename heuristics into statistics
Fix integration test names to make sure they run in maven
Use relationship degree from statistics when possible

o more consistent API for heuristics
Merge pull request #2232 from boggle/2.1-cypher-heuristics

Use relationship degrees from statistics when possible
Introduce solvedPatterns to LogicalPlans

This will be used to track which patterns have been solved similar to how IdNames are used and is required for var length patterns.
Make QueryGraph pick up var length patterns
Split PatternLength into {Var|Simple}PatternLength