fixes #4463 - use unattended URL for hostgroup provisioning

(cherry picked from commit 0e3d065853992a67ab35f3d0a2747d36a766ab24)
fixes #8363 - Sort VMware attributes alphabetically

(cherry picked from commit 7a347c663566936dd4a23eb498b6e250fe6735ff)
Fixes #6765 - correct wrong validation on media name

Regex used for validation was wrong, raising error on multiple white spaces instead of on trailing white space.
Trailing white space is stripped anyways by StripWhitespace concern before validation.
Original bug was concerning " " passing validation. However, that is not a single white space but rather quotes with a
space between them; while not useful, it is a valid name. (The quotes are escaped in the db)

(cherry picked from commit d3d17516a5b2b92c357a756fef2f18599f919a76)
Fixes #7440 - correctly autocomplete current_user

(cherry picked from commit c9363b77e31215c46f706287db5ec2dfd29d42e5)
Fixes #6872 - Add title to new compute resource page

(cherry picked from commit 5a6e661878875f3bb6c3ed56e700544ba68b83e9)
Fixes #7525 - don't fail on structured facts

(cherry picked from commit 2ec9c96fb577171eeb850b8847d5fd5f044ec4e0)
Fixes #8536 - can update and delete media with dot in name

(cherry picked from commit 12608e843a5e7895607e8e67bebfad66b1123e0c)
fixes #8221 - search for subnet with taxonomy scope

(cherry picked from commit e23023e29632a755582b2bd080fc7b226e606620)
fixes #8526 - file uploads are now possible via two_pane.

NOTE this will probably only work with HTML5 based browsers.

(cherry picked from commit 1049a7b53afbbea8963d9a48114c6982bbd07a7d)
fixes #8513 - removing n+1 query from images#index

(cherry picked from commit 65e7e1e40329191a24e41368f3aea16c5a4cd7b6)
Fixes #8546 - Namespace interfaces and subnets to avoid a facts clash

(cherry picked from commit d3b7f426959b7195ceedac1b9e719bfd1563af02)
Fixes #5999 - vpc + pub ip -> attach pub ip

(cherry picked from commit 5ba6c393e0a9bde31ffda6e10a783d3af21c1143)
fixes #5841 - use inner query when retrieving reports for subset of authorised hosts

(cherry picked from commit d50c79908831be65da0b0005e438c9e819db613a)
fixes #8228 - add a config_templates concern to serve config_templates controllers

(cherry picked from commit 563fa283aff363801d5cd160ab0c54f6c7634d98)
Fixes #8401: n+1 query on group parameters host edit

Hostgroup tries to eager load the group parameters but there's an error
in the code that renders the eager loading useless.

(cherry picked from commit 4cdc0455cc84711b0484fa519bb89a753ff88072)
Fixes #8551 - use most specific matcher for inherited hostgroups

Host recieves correct smart_class_parameter value when multiple overrides for
inherited host groups exist for parameter.

(cherry picked from commit daf34ae7195fda204ff6c9afdec8f14e4ce4f795)
Fixes #8416 - Fix Puppet classes form n+1 queries

(cherry picked from commit c4f9aca6da11d2e37446fd0f60bcf515358e726e)
fixes #8592 - allow plug-ins to modify multiple hosts actions

Refactoring patern: Extract method.

(cherry picked from commit 4dcf38a5eec2845495a48bb11ca37a6565830dbb)
fixes #8590 - handle missing 'config' when listing vSphere VMs

(cherry picked from commit fc94337014d175548746b16f2c70bb133de29497)
fixes #8591 - explicitly set where to subnets.id

(cherry picked from commit 395613b415d03bdf82c7a327abad4c9e46fdc99e)