control point hit testing and dragging
some work on ui state -> input params -> result