         scrollableStackView.addArrangedSubview(detailsLabel, layoutMargins: layoutMargins)
         scrollableStackView.addArrangedSubview(separatorView, layoutMargins: layoutMargins)
         scrollableStackView.addArrangedSubview(bioLabel, layoutMargins: layoutMargins)
+        
+        //Add the rightBarButtonItem
+        switch editKind {
+        case .Editable(let barButton):
+            navigationItem.rightBarButtonItem = barButton
+        default:
+            break
+        }
     }
     
     override public func viewWillDisappear(animated: Bool) {

    var titleInfo: NSAttributedString { get }
    var detailsInfo: NSAttributedString { get }
    var extraInfo: [NSAttributedString] { get }
    var editKind: ClassicProfileEditKind { get }
}

public class ClassicProfileViewController: ScrollableStackViewController, AsyncViewModelPresenter {
    
    public var dataProvider: Future<Result<ClassicProfileViewModel>>!
    let photoGallery = PhotoGalleryView()
    let titleLabel = UILabel.unlimitedLinesLabel()
    let detailsLabel = UILabel.unlimitedLinesLabel()

import Deferred
import BSWFoundation

public enum ClassicProfileEditKind {
    case NonEditable
    case Editable(UIBarButtonItem)
}

public protocol ClassicProfileViewModel {
