 public class Http {
     public var baseURL: NSURL?
     var session: NSURLSession
-    var requestSerializer: RequestSerializer!
-    var responseSerializer: ResponseSerializer!
+    let requestSerializer: RequestSerializer
+    let responseSerializer: ResponseSerializer
     
     public convenience init() {
         self.init(url: nil)

        self.init(url: url, sessionConfig: sessionConfig, requestSerializer: JsonRequestSerializer(url: baseURL, headers: headers), responseSerializer: JsonResponseSerializer())
    }
    
    init(url: String?, sessionConfig: NSURLSessionConfiguration?, requestSerializer: RequestSerializer, responseSerializer: ResponseSerializer) {
        self.baseURL = url == nil ? nil : NSURL.URLWithString(url!)
        self.session = (sessionConfig == nil) ? NSURLSession.sharedSession() : NSURLSession(configuration: sessionConfig!)
        self.requestSerializer = requestSerializer

                        return
                    }
                    var myError = NSError()
                    var isValid = self.responseSerializer.validateResponse(response, data: data, error: &myError)
                    if (isValid == false) {
                        failure(myError)
                        return
                    }
                    if data != nil {
                        var responseObject: AnyObject? = self.responseSerializer.response(data)
                        success(responseObject)
                    }
            })
