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

UI - realm moved to the primary tab
UI - fqdn in nics table
UI - flags in nics table
UI - checkboxes for provision and primary flags
UI - modal resize fix
UI - original fields for primary NIC removed
UI - skipping validation for new resources
UI - warnings before switching flags and table update
UI - host name and primary interface name connected
UI - host domain name in the page title
UI - nics on host show page
UI - clearing modal window on cancel
UI - fixed domain validation in NIC::Base
UI - ip suggestion for all interfaces
UI - flags switchable from the overview table
UI - use icons instead of text for primary/provision on NICs overview tab
UI - attempt to fix sending NIC template
VM/NIC tie-up
Refactor vm-nic further