             var masteryQueryItem = NSURLQueryItem(name: "masteryListData", value: masteryOptions)
             queryItems.append(masteryQueryItem)
         }
-        
-        addApiKeyQueryItemAndSetComponents()
-        
-        URL = components.URLString.stringByReplacingPercentEscapesUsingEncoding(NSUTF8StringEncoding)!
-        
+        createURL(hostString)
     }
     
     public func getMastery(id: Int, masteryDataOptions: [MasteryData]?) {
         var hostString = String("\(RegionBaseURL.global.rawValue)/api/lol/static-data/\(regionRawValue)/v\(LoLStaticDataVersion)/mastery/\(id)")
-        
-        setupComponents(https, hostString: hostString)
         
         if let masteryData = masteryDataOptions {
             var masteryOptions = ""

        queryItems = []
    }
    
    // MARK: Champion Info
    
    public func getChampions(freeToPlay: Bool?) {

            queryItems.append(champQueryItem)
        }

        createURL(hostString)
        
    }
    
    public func getChampionData(id: Int, champDataOptions: [ChampData]?) {
        var hostString = String("\(RegionBaseURL.global.rawValue)/api/lol/static-data/\(regionRawValue)/v\(LoLStaticDataVersion)/champion/\(id)")
        
        if let champData = champDataOptions {
            var champOptions = ""
