begin Choice class
generalize range_input into limited_input
RangeDecision is functional