anchor.diff:  There is a simple rule that will make this an easy decision:  
   
   ____
  -"`compile` if it shows, `provided` if nobody knows."
  +"`compile` if it shows, `provided` if nobody knows, `optional` if it comes and goes"
   ____
   
  -To explain, if you never publicly expose types (classes, interfaces, etc...) from another addon in the outward-facing APIs of your addon, then you should include 
  -that addon as `provided` scope. If you do, however, expose classes from that addon in the public APIs of your code,
  -then that addon should be labeled as `compile` scope (default,) which means that this dependency will be *'exported'*
  -to consumers that depend on your addon.
  +To explain, if you never publicly expose types (classes, interfaces, etc...) from another addon in the outward-facing APIs of your addon, then you should include that addon as `provided` scope. If you do, however, expose classes from that addon in the public APIs of your code, then that addon should be labeled as `compile` scope (default,) which means that this dependency will be *'exported'* to consumers that depend on your addon.
   
   Addon dependencies may also be made `optional` if consumers of your addon should be able to choose whether or not
   certain functionality is enabled, or if your addon behaves differently when other addons are already deployed to the
  -container. 
  +container. E.g. Your addon may enable additional features if an `<optional>` addon becomes installed into the Furnace runtime.
   
   The following chart explains this in detail. Assume that our addon depends on the `resources` addon, which provides
   the `ResourceFactory` and `FileResource` classes:
  
positive.code: 
  Now, you'll need to create a test class with the following layout, using the standard JUnit test APIs:
  
  [source,java]
  ----
  package org.example;
  
negative.code: </build>
  ----
  
  ---- Add a Furnace container
  
  _(Skip this step if you used the `Project: New` command from the previous step.)_
  
  In order to use CDI and services from other addons in your addon, you'll need to reference the Furnace CDI container addon as a dependency your _pom.xml_ file. Your choice of default Furnace container (CDI or Simple) will control your addon's lifecycle.
  
  You may also choose to omit a Furance container - this means your addon will not produce any services, will not start any jobs, and can only be used as a modular library by other addons. Alternatively, you can implement your own Furnace container, but that is a discussion for link:https://github.com/forge/furnace/blob/master/container-api/src/main/java/org/jboss/forge/furnace/lifecycle/AddonLifecycleProvider.java#L20[another document].
  
  [source,xml]
  ----
  