message: Added oldState defensive check
  Allows addNavigateHandlers to be called before initial navigate
diff: @@ -6,9 +6,12 @@ var addNavigateHandlers = (stateNavigator: StateNavigator | StateNavigator[]) =>
  var stateNavigators = isStateNavigator(stateNavigator) ? [stateNavigator] : stateNavigator;
  stateNavigators.forEach((stateNavigator, tab) => {
  stateNavigator.onNavigate(() => {
  - var {crumbs, history, oldState, oldData, oldUrl} = stateNavigator.stateContext;
  + var {crumbs, history, oldState, oldUrl} = stateNavigator.stateContext;
  + if (!oldState || history)
  + return;
  var {crumbs: oldCrumbs} = stateNavigator.parseLink(oldUrl);
  - if (!history && crumbs.length !== oldCrumbs.length) {
  + if (crumbs.length === oldCrumbs.length)
  + return;
  var {state, data, title, oldData, nextCrumb} = stateNavigator.stateContext;
  var titles = crumbs.map(({title}) => title).concat(title);
  var appKey = AppRegistry.getAppKeys()[0];
  @@ -23,7 +26,6 @@ var addNavigateHandlers = (stateNavigator: StateNavigator | StateNavigator[]) =>
  var exitAnim = oldState.getUnmountStyle && oldState.getUnmountStyle(false, oldData, oldCrumbs);
  }
  NavigationModule.render(crumbs.length, tab, titles, appKey, enterAnim, exitAnim);
  - }
  });
  });
  new NativeEventEmitter(NavigationModule).addListener('Navigate', ({crumb, tab}) => {
  