code: def setup_dotcloud_account(cli):
      
      client = RESTClient(endpoint=cli.client.endpoint)
      client.authenticator = NullAuth()
      urlmap = client.get('/auth/discovery').item
      username = cli.prompt('dotCloud email')
      password = cli.prompt('Password', noecho=True)
      credential = {'token_url': urlmap.get('token'),
          'key': CLIENT_KEY, 'secret': CLIENT_SECRET}
      try:
          token = cli.authorize_client(urlmap.get('token'), credential, username, password)
      except Exception as e:
          cli.die('Username and password do not match. Try again.')
      token['url'] = credential['token_url']
      config = GlobalConfig()
      config.data = {'token': token}
      config.save()
      cli.global_config = GlobalConfig()  # reload
      cli.setup_auth()
      cli.get_keys()
docs: Gets user/pass for dotcloud, performs auth, and stores keys