Refactor control add_item, allow section overrides

By refactoring the logic to construct the args passed into $wp_customize->add_setting
and $wp_customize->add_control, less duplicated logic is in the controls.
With the control args array now constructed in one place, this gives the
opportunity to introduce a new element field 'section' that can override
the default group that a control is assigned to. This is ideal if you want
the styles controls to be located within existing sections (which I do).
Delete unintentionally added file
Ensure trailing slash for customize-preview-js src

On a multisite subdirectory install, for a site 'foo', a URL
like the following results in a NOBLOGREDIRECT:

http://example.com/foo?styles-action=customize-preview-js...

This results in the preview not working at all. The fix is to ensure
that the script path ends in a slash, and this helps WordPress Multisite
properly route the request to the current site.
Store default setting value from JSON element

Currently the default value remains blank, so it does not show up in the controls
Improve handling of defaults for compound settings
Add background-position
Add support for background-position keywords (top, left, etc.)
Don't overload unit setting with keywords
Merge branch 'background-position' into develop