Chooser, first implementation

Closes #3