docs: def ensure_request(request):
      """Used for requests.request / Requests.request with **ensure_request(request)
      :param request: dict or curl-string or url
  
      >>> from torequests.utils import ensure_request
      >>> ensure_request('''curl http://test.com''')
      {'url': 'http://test.com', 'method': 'get'}
      >>> ensure_request('http://test.com')
      {'method': 'get', 'url': 'http://test.com'}
      >>> ensure_request({'method': 'get', 'url': 'http://test.com'})
      {'method': 'get', 'url': 'http://test.com'}
      >>> ensure_request({'url': 'http://test.com'})
      {'url': 'http://test.com', 'method': 'get'}
  
      """
      if isinstance(request, dict):
          result = request
      elif isinstance(request, (unicode, str)):
          request = request.strip()
          if request.startswith("http"):
              result = {"method": "get", "url": request}
          elif request.startswith("curl "):
              result = curlparse(request)
      else:
          raise ValueError("request should be dict or str.")
      result["method"] = result.setdefault("method", "get").lower()
      return result