Fix all issues I've encounter in a distributed environment

This addresses all the issues I've encountered getting puppet to run
cleanly in an environment where broker, msgserver, and nginx roles are
on separate hosts