refactor TestClientBasicArgs
add notion of roles, handling of multiple 2-arity role args (and tests, obviously)
role setup, but not (yet) used. ClusterBuilder creates the per-role details, which are mapped s.t. you can add custom properties without any problems. Also: add sprintf support to exception creation
hard code exit nos for easy lookup while debugging (ugly but practical)
cluster URI is now propagated to and loaded by the AM, but the switch to reading all config from it is not yet enabled