Ensure context strings are on a single line

This is so the script status markers are single lines.
Use primary-ip address for host on hostname change

When changing hostname we ensure the hostname is in the hosts file, so sudo does
not break.  Using the public ip ensures reverse name lookup is useable in
hadoop, for example.
Depend on pallet-codox for doc templates
Fix halting of phases on error

Phases were not stopping on action errors.
Allow up task to take phase arguments