         parameters: Dictionary<String, AnyObject>,
         dataEncoding: NSStringEncoding,
         body: NSData? = nil,
-        paramsLocation : ParamsLocation? = .AuthorizationHeader) throws -> NSMutableURLRequest {
+        paramsLocation : ParamsLocation = .AuthorizationHeader) throws -> NSMutableURLRequest {
             for (key, value) in headers {
                 request.setValue(value, forHTTPHeaderField: key)
             }

        self.timeoutInterval = 60
        self.HTTPShouldHandleCookies = false
        self.responseData = NSMutableData()
        self.paramsLocation = paramsLocation!
    }

    init(request: NSURLRequest, paramsLocation : ParamsLocation? = .AuthorizationHeader) {
        self.request = request as? NSMutableURLRequest
        self.URL = request.URL!
        self.HTTPMethod = Method(rawValue: request.HTTPMethod ?? "") ?? .GET

        self.timeoutInterval = 60
        self.HTTPShouldHandleCookies = false
        self.responseData = NSMutableData()
        self.paramsLocation = paramsLocation
    }

    func start() {
