Respects default values of optional context arguments

Fixes #477
Validate that `contexts` and `paths` settings are arrays before execution

Fixes #473
No meaningless newlines in the RepositoryArgumentTransformer
Transformations properly support boolean transformations

Fixes #469
TestResults does not need Iterator
Properly handle case when feature locator is provided, but no features found

Fixes #471
Abstract general part of FailedHookStat into HookStat interface
Renamed HookStatsListener to FailedHookStatsListener
Added scenario title to the stat
Use explicit methods instead of generics

This will allow multiple memory consumption optimizations later on
Move result code counting routine to the Statistics
Merged stats back to the final implementations
Optimize Statistics memory footprint
Simplify ScenarioStat signature
Fixes broken typehint
Fixed typo in FeatureHasNoBackgroundException message