(PUP-3591) Refactor get_facts to always return a hash
Configurer#get_facts would return either nil, or a Hash, forcing the
main run_internal method to guard its result. I've changed this to
return an empty hash instead of nil for consistency, allowing us to
remove a bit of duplicate code.