(packaging) Evaluate rpm spec file just like debian templates

Prior to this commit, we evaluated all of the debian templates when creating a
tarball, resulting in a 'ext/debian' directory containing usable debian
artifacts. On the other hand, we didn't bother creating the redhat spec from
the corresponding template, leaving that as an exercise left to the reader.
This seems odd. All of our other projects have fully usable spec files in their
tarball, and puppetdb should to. This also has the added benefit of allowing us
to control the binding context like we do on debian, instead of letting the
packaging repo do it. This means we can still mix puppetdb-defined '@'
variables with 'Pkg::Config' accessors supplied by the packaging repo.

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Replace non-portable shell calls in redhat spec with ruby

Prior to this commit, we shelled out to `hostname` and `date` in the redhat
spec template, which is poor practice if we expect to template that file
anywhere else. This commit updates these calls to use their most simpl ruby
equivalents, though we risk that we may not get a FQDN for hostname. This
doesn't really matter a ton by rpm standards, so I'm fine with it.

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>