Set a new state and return nothing (Unit).
State<S, Unit> put(S state) => State((_) => Tuple2(unit, state));