             self.endLongitude = endLongitude
     }
     
-    var requestUrl : String {
-        get {
-            return "estimates/price"
-        }
+    var requestUrl: String {
+        return "estimates/price"
     }
     
-    var queryParameters : [ String : AnyObject ] {
-        get {
-            return [
-                "start_latitude" : startLatitude,
-                "start_longitude" : startLongitude,
-                "end_latitude" : endLatitude,
-                "end_longitude" : endLongitude
-            ]
-        }
+    var queryParameters: [ String : AnyObject ] {
+        return [
+            "start_latitude" : startLatitude,
+            "start_longitude" : startLongitude,
+            "end_latitude" : endLatitude,
+            "end_longitude" : endLongitude
+        ]
     }
     
-    var HTTPMethod : CRHTTPMethod {
-        get {
-            return CRHTTPMethod.GET
-        }
+    var HTTPMethod: CRHTTPMethod {
+        return CRHTTPMethod.GET
     }
 }
 
 
 struct CRUberTimeEstimatesRequest : CRUberRequest {
     
-    var startLatitude : Double
-    var startLongitude : Double
+    var startLatitude: Double
+    var startLongitude: Double
     
     init(withStartLatitude
-        startLatitude : Double,
-        startLongitude : Double) {
+        startLatitude: Double,
+        startLongitude: Double) {
             
             self.startLatitude = startLatitude
             self.startLongitude = startLongitude
     }
     
-    var requestUrl : String {
-        get {
-            return "estimates/time"
-        }
+    var requestUrl: String {
+        return "estimates/time"
     }
     
-    var queryParameters : [ String : AnyObject ] {
-        get {
-            return [
-                "start_latitude" : startLatitude,
-                "start_longitude" : startLongitude
-            ]
-        }
+    var queryParameters: [ String : AnyObject ] {
+        return [
+            "start_latitude" : startLatitude,
+            "start_longitude" : startLongitude
+        ]
     }
     
-    var HTTPMethod : CRHTTPMethod {
-        get {
-            return CRHTTPMethod.GET
-        }
+    var HTTPMethod: CRHTTPMethod {
+        return CRHTTPMethod.GET
     }
 }
 
 struct CRUberPromotionsRequest : CRUberRequest {
     
-    var startLatitude : Double
-    var startLongitude : Double
-    var endLatitude : Double
-    var endLongitude : Double
+    var startLatitude: Double
+    var startLongitude: Double
+    var endLatitude: Double
+    var endLongitude: Double
     
     init(withStartLatitude
-        startLatitude : Double,
-        startLongitude : Double,
-        endLatitude : Double,
+        startLatitude: Double,
+        startLongitude: Double,
+        endLatitude: Double,
         endLongitude: Double) {
             
             self.startLatitude = startLatitude


protocol CRUberRequest {
    
    var host : String { get }
    var requestUrl : String { get }
    var HTTPMethod : CRHTTPMethod { get }
    var queryParameters : [ String : AnyObject ] { get }
    
    func send()
}

extension CRUberRequest {
    
    var host : String {
        get {
            return "https://api.uber.com/v1/"
        }
    }
    
    func send() {
        
        var paramsArray : Array<String> = Array()
        
        for (key, value) in self.queryParameters  {
            paramsArray.append(key + "=" + "\(value)") // TODO: Not this! (FIST)

            self.endLongitude = endLongitude
    }
    
    var requestUrl: String {
        return "promotions"
    }
    
    var queryParameters: [ String : AnyObject ] {
        return [
            "start_latitude" : startLatitude,
            "start_longitude" : startLongitude,
            "end_latitude" : endLatitude,
            "end_longitude" : endLongitude
        ]
    }
    
    var HTTPMethod: CRHTTPMethod {
        return CRHTTPMethod.GET
    }
}

