fix threading issue on loadPageWithIndex
implemented pageControllerWillStartTransition
refactoring, fix optional protocol implementation