Selectively clear steps
Fix some tests

- Update output formatting
- Fix non-ASCII in proposed function definitions
- Stable order for function definitions
- Deduplicate function definitions
Fix output plugins clashing with each other
Fix scenario names output behavior on ERROR and UNDEF
Update tests for dots output
Gherkin compliant multiline parsing
Test strange indenting
Warn about underindented strings
Reenable unit tests for step.represented
Preserve outline ordering
Remove some skiptests
Fix regressions caused by fixing outlines ordering

Remove coloured output tests, they are completely broken and need
rebuilding.
Preserve the registry when creating steps for a test
Fix XUnit tests
Fix subunit tests
Fix finding definitions for background steps
Fix relying on dirty state in tests
Put registry.clear() back
Don't eat import errors and syntax errors
Flush messages as soon as they are printed