Bugfix: errors from repeatable subgroups

Fixed a bug where updating subgroups which resulted in a smaller set threw an error when attempting to preprocess empty padded values, which are passed to give the preprocessing a chance to run (see also #164).

Also moved `test_saving_nested_groups` out of the unrelated Datasource_Post class and into the new Group test class.
I would add parens to explicitly define order of operations, `null === $values || ( defined( 'DOING_CRON' ) && DOING_CRON && empty( $values ) )`