anchor.diff:  
   p
       |  When you load a model, spaCy first consults the model's
  -    |  #[+a("/usage/saving-loading#models-generating") meta.json]. The
  +    |  #[+a("/usage/saving-loading#models-generating") #[code meta.json]]. The
       |  meta typically includes the model details, the ID of a language class,
       |  and an optional list of pipeline components. spaCy then does the
       |  following:
  
positive.code:         "name": "example_model",
          "lang": "en"
          "description": "Example model for spaCy",
          "pipeline": ["tensorizer", "tagger"]
      }
  
  +list("numbers")
      +item
          |  Look up #[strong pipeline IDs] in the available
          |  #[strong pipeline factories].
      +item
          |  Initialise the #[strong pipeline components] by calling their
          |  factories with the #[code Vocab] as an argument. This gives each
          |  factory and component access to the pipeline's shared data, like
          |  strings, morphology and annotation scheme.
      +item
          |  Load the #[strong language class and data] for the given ID via
          |  #[+api("util.get_lang_class") #[code get_lang_class]].
      +item
          |  Pass the path to the #[strong model data] to the #[code Language]
          |  class and return it.
  
  p
      |  So when you call this...
  
negative.code:     pipeline = ['tensorizer', 'tagger', 'parser', 'ner']
      data_path = 'path/to/en_core_web_sm/en_core_web_sm-2.0.0'
  
      cls = spacy.util.get_lang_class(lang)   # 1. get Language instance, e.g. English()
      nlp = cls()                             # 2. initialise it
      for name in pipeline:
          component = nlp.create_pipe(name)   # 3. create the pipeline components
          nlp.add_pipe(component)             # 4. add the component to the pipeline
      nlp.from_disk(model_data_path)          # 5. load in the binary data
  
  p
      |  When you call #[code nlp] on a text, spaCy will #[strong tokenize] it and
  