code: function decendTreeByRoutedToken(node, value, routeToken) {
      var next = null;
      switch (value) {
          case Keys.keys:
          case Keys.integers:
          case Keys.ranges:
              next = node[value];
              if (!next) {
                  next = node[value] = {};
              }
              break;
          default:
              break;
      }
      if (next && routeToken) {
          // matches the naming information on the node.
          next[Keys.named] = routeToken.named;
          next[Keys.name] = routeToken.name;
      }
  
      return next;
  }
docs: decends the rst and fills in any naming information at the node.
  if what is passed in is not a routed token identifier, then the return
  value will be null