fixes #6342 - ignore empty hashes inside cr_attrs when using compute profile

This problem's a little tricky, but I *think* it's the right thing to do.  Feedback welcome.

If you're creating a host with a host group that has a compute profile, supplying compute_attributes isn't required.  However if you're creating a host without a profile, you need to supply volume_attributes etc so the VM can be created (these params are expected by the CR models).  Hammer always supplies them, but it doesn't know if a compute profile will be used or not, so I think it's best if we ignore empty sub-params and use the compute profile.
I agree, this feels like a deep-merge situation. It seems safer to merge the profile and the explicit options - but I'm unclear as to who should win when both are specified - my gut feeling is the explicit ones on the host params should win.