This fixes up the calling and propagates the contexts for the backends which use lib/rest.
- factor password generation into lib/random.Password - call from appropriate places - choose appropriate use of random.String vs random.Password