Implement puppet client role - ces 1560

This is an interim checkin of ongoing puppet work, mainly meant to create an initial prototype jig and validated puppet client invocation on remote nodes.  Details will probably change in the next iteration.