Fix in HDF5 for NULL hostname

The hostname was being set as an HDF5 value before the field was
set in slurmstepd, resulting in SEGV. This change sets hostname
before the HDF5 call and also tests for NULL before trying to set
the value. Backtrace of failure:
(gdb) bt
0  strlen () at ../sysdeps/x86_64/strlen.S:106
1  0x00007f4af5bb756d in put_string_attribute (parent=33554432,
   name=0x7f4af5bb8591 "Node Name", value=0x0)
   at src/plugins/acct_gather_profile/hdf5/hdf5_api.c:1711
2  0x00007f4af5bad224 in acct_gather_profile_p_node_step_start (job=0x194cc80)
   at src/plugins/acct_gather_profile/hdf5/acct_gather_profile_hdf5.c:372
3  0x000000000052ca86 in acct_gather_profile_g_conf_set (tbl=0x194cc80)
   at src/common/slurm_acct_gather_profile.c:490
4  0x000000000042e028 in batch_stepd_step_rec_create (msg=0x194d280)
   at src/slurmd/slurmstepd/slurmstepd_job.c:496
5  0x0000000000426ae5 in mgr_launch_batch_job_setup (msg=0x194d280, cli=0x194bec0)
   at src/slurmd/slurmstepd/mgr.c:422
6  0x00000000004263da in _step_setup (cli=0x194bec0, self=0x0, msg=0x194bd90)
   at slurmd/slurmstepd/slurmstepd.c:516
7  0x0000000000424302 in main (argc=1, argv=0x7fff1f7c6c98)
    at src/slurmd/slurmstepd/slurmstepd.c:127