Refactor/chained guesser

Todo
 - [x] declare guessers as services
 - [x] add chained guesser

Bug fix: [no]
Feature addition: [no]
Backwards compatibility break: [no]
Unit test passes: [yes]
Behat scenarios passes: [yes]
Checkstyle issues: [no]
ChangeLog updated: [no]