create custom exception/error handling mechanism

spice up tests to see both parent and ancestor

little CS fix

more CS fixes

enabling core matcher/provider

rename BestMatcher -> SuggestionProvider

move presentation model -> controller, fix last namings (matcher -> suggest provider), fix tests

suggestion provider are able to add suggestions to the same group now, lists are merged

change name Ancestor -> Sibling for suggestion provider, fix adder for suggestion provider in controller - provider on equal groups are possible now.

enable both suggestion provider separately