Split library re-written to add "excludeCoupledKeys" option

The "JSONForm.split" function includes keys that are directly coupled
to the provided list of keys in the "included" JSON Form object by
default.

The new options parameter that may be passed lets the caller set the
"excludeCoupledKeys" option to include the provided list of keys and
only those keys in the "included" JSON Form object.

As a result, the same "fieldset" construct may now appear both in the
"included" form and in the "excluded" form. The fields will be
different in both cases.