forms: Standardize saving of choice field values

Always save a key/value hash of the selected value(s). However, if the field
does not have the multivalue configuration setting, then retrieve just the
key with the to_php() function. to_database(), however, will always return a
JSON string with the value(s) formatted as a hash array.
forms: Fixup the SelectionField wrt. multiple values

Always support and consider multiple values — even using the typeahead
widget.
forms: Disconnect toString() and getChoice() functionality
forms: Fix loading indication on dialog
forms: Selection of a choice field is not always required