             }
         }
         
+        if let timeout = timeout {
+            configuration.timeoutIntervalForRequest = timeout
+        }
+        
+        session = URLSession(configuration: self.configuration)
+        
         if let headers = configuration.httpAdditionalHeaders as? [String: String] {
             dprint("Configuration headers : \(headers)")
-        }
-        
-        if let timeout = timeout {
-            configuration.timeoutIntervalForRequest = timeout
         }
     }
     

        print("")
    }
    
    fileprivate func dumpResponse(_ response: HTTPURLResponse) {
        if let responseURL = response.url?.absoluteString {
            dprint("Response URL:\t\(responseURL)")
        }

public final class RESTClient {
    
    // MARK: - Properties
    private let configuration: URLSessionConfiguration
    private let session: URLSession
    
    
    // MARK: - Initialiser
