   There is a sixth key, called `:modules`, which is rarely changed and
   it is set automatically based on the value in `:start`.
 
-  Most times, the behaviour module you are implementing will take care
-  of setting up a proper `child_spec/1` for you. For example, `use Supervisor`
-  will define a `child_spec/1` where the `:type` is set to `:supervisor`
-  and the `:shutdown` is `:infinity`. Still, if you need to customize
-  a certain behaviour, you can do so by defining your own `child_spec/1`
-  function or by passing options on `use`. For example, to specify a
-  `GenServer` with a shutdown limit of 10 seconds (10_000 milliseconds),
-  one might do:
-
-      use GenServer, shutdown: 10_000
-
   Let's understand what the `:shutdown` and `:restart` options control.
 
   ### Shutdown values (:shutdown)
 
   The following shutdown values are supported in the `:shutdown` option:
 
-    * `:brutal_kill` - the child process is unconditionally terminated
-      using `Process.exit(child, :kill)`.
+    * `:brutal_kill` - the child process is unconditionally and immediately
+      terminated using `Process.exit(child, :kill)`.
 
     * any integer >= 0 - the amount of time in milliseconds that the
       supervisor will wait for children to terminate after emitting a

      `:normal`, `:shutdown` or `{:shutdown, term}`.

  For a more complete understanding of the exit reasons and their
  impact, see the "Exit reasons" section next.

  ## Exit reasons and restarts


  the proper `:shutdown` value, ensuring it terminates within a reasonable
  interval.

  Now that we understand the start and shutdown process, let's take a
  complete look at all of the options provided in the child specification.

  ## Child specification

  The child specification describes how the supervisor start, shutdown and
  restart child processes.

  The child specification contains 5 keys. The first two are required
  and the remaining ones are optional:
