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)
Fixes #7440 - correctly autocomplete current_user
fixes #8445 - upgrade rails to 3.2.21
Fixes #6872 - Add title to new compute resource page
Fixes #7233 - Drop Ruby 1.8.7 and revert Ruby 1.8.7 specifics
Fixes #7525 - don't fail on structured facts
fixes #8357 - Set fog gem to version 1.25.0
fixes #8510 - ignore gettext load failures in production without it

gettext is only used when loading gettext_i18n_rails 1.x rake tasks, so it's
only marked as a development dependency.  In production we won't have it, but
still ship this .rake file, so permit loading to fail.
fixes #8367 - Eager load classes under /lib
Fixes #8414 - extracts validators from models

Also cleans up some unused validators looking for trailing whitespace
that is stripped by the StripWhitespaces concern.
Tried to make some sense from unmatching regexps and validation error
messages. Some validations might need a different regexp to check for what
they are actually supposed to validate - but atleast now messages fit
the actual validation.
fixes #8463 - remove i18n bundler group as it isn't optional

fast_gettext/gettext_i18n_rails are both runtime dependencies, not optional.
gettext_i18n_rails_js moved to assets as it provides no runtime functionality.
Fixes #5723 - Show host groups inherited via config groups in puppetclass index
fixes #8527 - pin rest-client to version compatible with current rbovirt

Pin rbovirt a bit in preparation for a jump in versions.
fixes #7487 - remove unused background-image containing UTF-8 character

UTF-8 was causing BOMs to appear in the precompiled CSS, which then prevented
these styles being applied, so bullet points appeared on the dashboard.
fixes #8467 - trends range selector is now visible
fixes #8459 - remove sp_subnet_id from api/hosts
Fixes #8428 - Connecting audits to existing users
fixes #8356 - refactor reset method for libvirt
Fixes #7456 - Extract primary interface from host

All host must have at least one primary interface and one provision (can
be the same interface). Primary interface gives host a name so even
unamanaged host have primary interface (we skip validations of other
attributes for unamanged hosts though).

Host still have name attribute which is a cache of primary interface name.
Therefore we can use the host name in SQL queries, as a friendly_id etc.
UI changes for extraction

- realm moved to the primary tab
- fqdn in nics table
- flags in nics table
- checkboxes for provision and primary flags
- modal resize fix
- original fields for primary NIC removed
- skipping validation for new resources
- warnings before switching flags and table update
- host name and primary interface name connected
- host domain name in the page title
- nics on host show page
- clearing modal window on cancel
- fixed domain validation in NIC::Base
- ip suggestion for all interfaces
- flags switchable from the overview table
- use icons instead of text for primary/provision on NICs overview tab
- attempt to fix sending NIC template
- fix fqdn algorithm
- ip addres in the overview table
- fix for class name collision
- better behavior of host name <-> primary name sync
- fix for subnet combobox values
- fix for modal poping up on form submission