- rename internal function `getNextQuestion` to `tryGetNextQuestion` - rename `currentQuestion` to `nextUnansweredQuestion` to better describe what it does - split up the getResults function into different sub functions. reference #156