     func loadStationsFromJSON() {
         
         // Turn on network indicator in status bar
-        UIApplication.sharedApplication().networkActivityIndicatorVisible = true
+        UIApplication.shared.isNetworkActivityIndicatorVisible = true
         
         // Get the Radio Stations
         DataManager.getStationDataWithSuccess() { (data) in
             
             if kDebugLog { print("Stations JSON Found") }
             
-            let json = JSON(data: data)
+            let json = JSON(data: data! as Data)
             
             if let stationArray = json["station"].array {
                 
                 for stationJSON in stationArray {
-                    let station = RadioStation.parseStation(stationJSON)
+                    let station = RadioStation.parseStation(stationJSON: stationJSON)
                     self.stations.append(station)
                 }
                 
                 // stations array populated, update table on main queue
-                dispatch_async(dispatch_get_main_queue()) {
+                DispatchQueue.main.async(execute: {
                     self.tableView.reloadData()
                     self.view.setNeedsDisplay()
-                }
+                })
                 
             } else {
                 if kDebugLog { print("JSON Station Loading Error") }
             }
             
             // Turn off network indicator in status bar
-            UIApplication.sharedApplication().networkActivityIndicatorVisible = false
+            UIApplication.shared.isNetworkActivityIndicatorVisible = false
         }
     }
     


extension StationsViewController: UITableViewDelegate {
    
    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
        
        tableView.deselectRowAtIndexPath(indexPath, animated: true)
        
        if !stations.isEmpty {
            
            // Set Now Playing Buttons
            let title = stations[indexPath.row].stationName + " - Now Playing..."
            stationNowPlayingButton.setTitle(title, forState: .Normal)
            stationNowPlayingButton.enabled = true
            
            performSegueWithIdentifier("NowPlaying", sender: indexPath)
        }
    }
}

        
        // Register 'Nothing Found' cell xib
        let cellNib = UINib(nibName: "NothingFoundCell", bundle: nil)
        tableView.register(cellNib, forCellReuseIdentifier: "NothingFound")
        
        // preferredStatusBarStyle()
        
        // Load Data
        loadStationsFromJSON()
        
        // Setup TableView
        tableView.backgroundColor = UIColor.clear
        tableView.backgroundView = nil
        tableView.separatorStyle = UITableViewCellSeparatorStyle.none
        
        // Setup Pull to Refresh
        setupPullToRefresh()
