         })
     }
     
+    /**
+    Helper method to perform delay dispatch (unable to call the same method inside dispatch_after) of push.
+    
+    :param: viewController The view controller to push onto the stack.
+    :param: animated Default Cocoa API behavior - Specify YES to animate the transition or NO if you do not want the transition to be animated.
+    */
     func performPush(viewController: UIViewController, animated: Bool) {
         super.pushViewController(viewController, animated: animated)
     }
     
+    /**
+    Helper method that dispatches method after certain time passes.
+    
+    :param: delay Time to wait before closure is called.
+    :param: closure Closure to be performed after the delay time passes.
+    */
     func delay(delay: Double, closure:() -> Void) {
         dispatch_after(dispatch_time(DISPATCH_TIME_NOW, Int64(delay * Double(NSEC_PER_SEC))), dispatch_get_main_queue(), closure)
     }

                visibleViewController.showBar(UIInterfaceOrientationIsLandscape(self.interfaceOrientation))
            }
            
            visibleViewController.scrollView.animateSubviewCells(false)
        }
        return poppedViewController
    }
    
    override func pushViewController(viewController: UIViewController, animated: Bool) {
        if let viewController = self.visibleViewController as? T2GViewController {
            if viewController.isHidingEnabled {
                viewController.showBar(UIInterfaceOrientationIsLandscape(self.interfaceOrientation))
            }
            
            viewController.scrollView.animateSubviewCells(true)
        }
        
        self.delay(self.segueDelay, closure: { () -> Void in

        }
    }
    
    /**
    Pops current view controller. In case previous view controller in the stack has isHidingEnabled flag set to true, it shows the bar so it doesn't mess up with the UI while animating the cells on the way back.
    
    :param: animated Default Cocoa API behavior - Set this value to YES to animate the transition.
    :returns: The view controller that was popped from the stack.
    */
    override func popViewControllerAnimated(animated: Bool) -> UIViewController? {
        var poppedViewController = super.popViewControllerAnimated(animated)
        if let visibleViewController = self.visibleViewController as? T2GViewController {
