 
     @discardableResult
     public func head(_ request: URLRequest, completion: @escaping ResultCompletion) -> URLSessionTask {
-        var req = request
-        req.httpMethod = HTTPMethod.HEAD.rawValue
-
-        return sendDownloadTask(request: req, downloadTo: nil, downloadProgress: nil, completion: completion)
+        var headRequest = request
+        headRequest.httpMethod = HTTPMethod.HEAD.rawValue
+
+        return sendDownloadTask(request: headRequest, downloadTo: nil, downloadProgress: nil, completion: completion)
     }
 
     @discardableResult
     public func post(_ request: URLRequest, from data: Data, downloadTo fileUrl: URL? = nil, uploadProgress: UploadProgress? = nil, downloadProgress: DownloadProgress? = nil, completion: @escaping ResultCompletion) -> URLSessionTask {
-        var req = request
-        req.httpMethod = HTTPMethod.POST.rawValue
-
-        return sendUploadTask(request: req, from: data, downloadTo: fileUrl, uploadProgress: uploadProgress, downloadProgress: downloadProgress, completion: completion)
-    }
-    
+        var postRequest = request
+        postRequest.httpMethod = HTTPMethod.POST.rawValue
+
+        return sendUploadTask(request: postRequest, from: data, downloadTo: fileUrl, uploadProgress: uploadProgress, downloadProgress: downloadProgress, completion: completion)
+    }
+
     @discardableResult
     private func sendDownloadTask(
         request: URLRequest,


    public static var shared = HTTPSession()

    public private(set) var session: URLSession! = nil

    fileprivate var taskHandlers = [Int: TaskHandler]()

    public init(config: URLSessionConfiguration? = nil) {
        super.init()

        let config = config ?? URLSessionConfiguration.default
        self.session = URLSession(configuration: config, delegate: self, delegateQueue: nil)
    }



    @discardableResult
    public func get(_ request: URLRequest, downloadTo fileUrl: URL? = nil, downloadProgress: DownloadProgress? = nil, completion: @escaping ResultCompletion) -> URLSessionTask {
        var getRequest = request
        getRequest.httpMethod = HTTPMethod.GET.rawValue

        return sendDownloadTask(request: getRequest, downloadTo: fileUrl, downloadProgress: downloadProgress, completion: completion)
    }

    @discardableResult
