Generic, event-like processing of user selection processing
Better message for denying signup when in any wait list
Move subscription between timeslots atomically

For signup sheets where the user can signup for one time slot at most,
this allows changing subscription to a different slot directly.

The main advantage for the user is that this minimizes the risk of
ending up with no subscription when manually changing the timeslot. As
currently the user is required to cancel the current subscription, it
is possible that both the old and new timeslots fill up in the time it
takes to submit the subscription for either/both slots.

Also, this saves time as the user doesn't have to retype the
information needed for the signup.
Make it harder to hit the wrong action by accident

A minor change converting the «Return...» link in a paragraph and
explicitly creating some empty space between it an the submit button.
Don't sign up multiple times from wait list if not allowed

The restriction to a maximum of one subscription when
`allowSignupForMultipleSlots` is false can be circumvented by signing
up for wait lists if the check added by this commit is not in place.
Add link to return to signup sheet from @@show-reservations
Merge branch 'atomic-timeslot-change-v2'