code: function _coerceObjectType(obj, objHint){
      switch(objHint){
        case 'string':
          //Response that comes back is application/octet-stream, which we will return raw
          return obj;
        case 'buffer':
          return Buffer.from(obj, 'utf8');
        case 'number':
          var num = Number(obj);
          if(isNaN(num)){
            throw new TypeError("'number was requested as a type, but result is NaN!");
          }
          return num;
        case 'array':
          if(obj[0] == undefined){
            //Is an object, not an array, so we will construct an array of just this object
            return new Array(pObj);
          }
          return obj;
        case 'boolean':
          //Today's javascript fun-fact: 'false' is truthy!
          if(obj == 'false'){
            return false;
          }
          return Boolean(obj);
        default:
          return obj;
      }
  }
docs: /*
  Internal method for coercing the response back into the expected format.
  Takes an 'object hint' which defines the expected response format,
  but if one is not provided, responds with the plain object. Should be fine,
  since no serialization happens in the mock cache.