         headerView.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat(String(format:"V:|-doublePadding-[appName]-padding-[copyrightInfo]%@-doublePadding-|",secondFormatString), options: [], metrics: metrics, views: viewsDictionary))
     }
     
-    public override func viewWillAppear(animated: Bool) {
-        super.viewWillAppear(animated)
-        
-        navigationController?.navigationBar.titleTextAttributes = [
-            NSForegroundColorAttributeName : navigationBarTitleTextColor
-        ]
-        if navigationController?.viewControllers.first == self {
-            let leftItem = UIBarButtonItem(image:closeButtonImage, style: .Plain, target: self, action: Selector("close"))
-            navigationItem.leftBarButtonItem = leftItem
-        }
-        navigationItem.title = NSLocalizedString("About", comment:"UINavigationBar Title")
-    }
-    
-    //MARK:- UITableView Delegate & Data Source
-    
-    public func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
-        switch tableView {
-        case additionalButtonsTable:
-            return additionalButtons.count
-        case acknowledgementsTableView:
-            return acknowledgements.count
-        default:
-            return 0
-        }
-    }
-    
-    public func numberOfSectionsInTableView(tableView: UITableView) -> Int {
-        return 1
-    }
-    
-    public func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
-        var cell = tableView.dequeueReusableCellWithIdentifier("Cell")
-        
-        if cell==nil {
-            cell = UITableViewCell(style: .Default, reuseIdentifier: "Cell")
-            cell?.textLabel?.font = UIFont.systemFontOfSize(sizeForPercent(4.688), weight: -1)
-
-            if let theFont = fontTableCellText {
-                cell?.textLabel?.font = theFont
-            }
-            cell?.selectionStyle = .Default
-            
-            if let cellBGColor = tableViewSelectionColor {
-                let bgColorView = UIView()
-                bgColorView.backgroundColor = cellBGColor
-                cell?.selectedBackgroundView = bgColorView
-            }
-            
-            var title = ""
-            if tableView == additionalButtonsTable {
-                title = (additionalButtons[indexPath.row].keys.first)!
-            } else {
-                title = (acknowledgements[indexPath.row].keys.first)!
-            }
-            cell?.textLabel?.textColor = tableViewTextColor
-            cell?.backgroundColor = tableViewBackgroundColor
-            cell?.textLabel!.text = title
-            cell?.accessoryType = .DisclosureIndicator
-        }
-        
-        return cell!
-    }
-    
-    public func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
-        let cell = tableView.cellForRowAtIndexPath(indexPath)
-        cell!.selected = false
-        
-        var theDict = [String: String]()
-        
-        if tableView == additionalButtonsTable {
-            theDict = additionalButtons[indexPath.row]
-        } else {
-            theDict = acknowledgements[indexPath.row]
-        }
-        showDetailViewController(theDict)
-    }
-    
-    private func showDetailViewController(infoDictionary: [String:String]) {
-        let viewController = RFAboutViewDetailViewController(infoDictionary: infoDictionary)
-        viewController.showsScrollIndicator = showsScrollIndicator
-        viewController.backgroundColor = backgroundColor
-        viewController.tintColor = tintColor
-        viewController.fontLicenseText = fontLicenseText
-        viewController.textColor = acknowledgementsHeaderColor
-        navigationItem.backBarButtonItem = UIBarButtonItem(title: nil, style: .Plain, target: nil, action: nil)
-        navigationController?.pushViewController(viewController, animated: true)
-    }
     
     //MARK:- Action methods
     

        tableHeaderLabel.backgroundColor = .clearColor()
        tableHeaderLabel.textAlignment = .Left
        tableHeaderLabel.text = String(format: NSLocalizedString("%@ makes use of the following third party libraries. Many thanks to the developers making them available!", comment: "Acknowlegdments header title"), appName!)
        headerView.addSubview(tableHeaderLabel)
        tableHeaderLabel.sizeToFit()
        tableHeaderLabel.layoutIfNeeded()
        
        if showAcknowledgements {
            scrollViewContainer.addSubview(tableHeaderLabel)
        }

        acknowledgementsTableView.translatesAutoresizingMaskIntoConstraints = false
        acknowledgementsTableView.clipsToBounds = false
        acknowledgementsTableView.delegate = self

        headerView.addSubview(copyrightInfo)
        copyrightInfo.sizeToFit()
        copyrightInfo.layoutIfNeeded()
        return copyrightInfo
    }
    
    private func setupAndAddHeaderButton(button: UIButton, title: String?, font: UIFont, target: Selector, headerView: UIView) {
        button.translatesAutoresizingMaskIntoConstraints = false
        button.setTitleColor(headerTextColor, forState: .Normal)
        button.setTitle(title, forState: .Normal)
        button.titleLabel?.font = font
        button.addTarget(self, action: target, forControlEvents: .TouchUpInside)
        headerView.addSubview(button)
    }

    private func createAndAddAdditionalButtonsTable(scrollViewContainer scrollViewContainer: UIView) {
        additionalButtonsTable.translatesAutoresizingMaskIntoConstraints = false
        additionalButtonsTable.clipsToBounds = false
        additionalButtonsTable.delegate = self
