tutorial from http://nscookbook.com/2013/08/ios-programming-recipe-28-view-controller-containment-transitioning/