Standardize AccessInfo token setting

When settings tokens via the factory v2 and v3 work completely
differently. This is somewhat expected due to tokens working differently
but it makes it hard to work with.

For example, if i have a v3 token but not the requests.Response that
created it there is no way for me to set the token data on the
AccessInfo object via factory.

Also in the case of V2 CMS tokens the value at ['token']['id'] is a fake
so that the signing process will work.

Allow overriding the token value from the factory and force setting the
token id on the AccessInfo in a standard way.

Change-Id: I856096dc5fae2ab0d1bedbac3294dc4976c3f3ad
Merge "Standardize AccessInfo token setting"
Fix test mistake with requests-mock

body= parameters are supposed to be io objects. This is obviously during
the conversion from HTTPretty.

Change-Id: Ia8ec9294e054e2231aa4a5e2633e2b7d5d15066a
Closes-Bug: #1363632