 extension UIStoryboardSegue: SegueProtocol {
 }
 
+
+//MARK: - MainViewController
 extension UIStoryboardSegue {
     func selection() -> MainViewController.Segue? {
         if let identifier = self.identifier {
             return MainViewController.Segue(rawValue: identifier)
         }
         return nil
-    }
-}
-
-//MARK: - MainViewController
-
-extension MainViewController {
-    override class var storyboardIdentifier:String? { return "MainViewController" }
-    class func instantiateFromStoryboard(storyboard: Storyboards) -> MainViewController! {
-        return storyboard.instantiateViewControllerWithIdentifier(self.storyboardIdentifier!) as? MainViewController
     }
 }
 

import UIKit

//MARK: - Storyboards
enum Storyboards: String {
    case Main = "Main"

    private var instance:UIStoryboard {
        return UIStoryboard(name: self.rawValue, bundle: nil)
    }

    func instantiateInitialViewController() -> UIViewController? {
        switch (self) {
        case Main:
            return self.instance.instantiateInitialViewController() as! UINavigationController
        default:
            return self.instance.instantiateInitialViewController() as? UIViewController
        }
    }

    func instantiateViewControllerWithIdentifier(identifier: String) -> UIViewController {
        return self.instance.instantiateViewControllerWithIdentifier(identifier) as! UIViewController
    }
}



}

//MARK: - ScreenTwoViewController

//MARK: - ScreenOneViewController
