[Console] Added better interaction for choice questions

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | 
| License       | MIT
| Doc PR        | 

This PR adds a more user friendly way to ask choice questions when `stty` is available.

### Single choice question

![single](https://cloud.githubusercontent.com/assets/1586668/3487265/18c756aa-0471-11e4-8b5e-02de3219e55f.png)

You can move up and down with the arrow keys. 
To validate your choice press `enter`.

### Multi choice question
![multi](https://cloud.githubusercontent.com/assets/1586668/3487191/3385a27c-046b-11e4-8adb-c2e359b9fc5a.png)

You can move up and down with the arrow keys. 
To select / deselect a choice press the `spacebar`. 
To validate your choices press `enter`.

Todos:

- [x] Finish tests
- [ ] Documentation
Afaik private methods are not documented unless there is ambiguity (but here the argument names are quite descriptive already)