[Katello 2.4] Hostname must not include periods errors

I am seeing some very annoying behavior in Katello 2.4.

Previously, I used to be able to create a host with giving it a fqdn as its
hostname. ie, host1.domain1.net.

Now when I try to do that it gives me an error 'must not include periods'
beside the hostname when I provision it.

This is causing all sorts of errors and madness in Katello front end. What
happens is that when you choose a realm, it strips the hostname, and now in
your host list, you see 'host1' instead of 'host1.domain1.net'.

The problem with this is that as soon as the puppet run completes, with its
configuration file configured to report as 'host1.domain1.net', you
suddenly have 2 hosts in your host list. One host called
'host1.domain1.net' reporting in every 30 minutes, and then your original
host with all your actual build definitions showing there as never having
check in with a full name of just 'host1'.

The other issue this causes is with multiple domains. We have something
like 50-100 test domains in our environment. This includes a naming
standard that all domain controllers are named 'dc1'. So when I try to
provision dc1.domain1.net and dc1.domain2.net now they both just look like
'dc1' on my list. This makes it very hard to parse what I'm actually
looking at.

Also, when I want to quickly provision a domain name that is not managed,
for testing purposes, even when I override the inheritance and strip the
values in the realm and domain dropdown boxes, it gives me error messages
that the hostname is invalid and cannot contain dots.

Please do something about this.

This was all working fine in 2.3 but 2.4 has severely broken anything other
than a vanilla deployment with a single domain and single realm or managed
domains and realms. All other use cases end up exhibiting really strange
bugs and behaviors.