   behaviour, as it helps with uniformity and also allows at least the `.format`
   function of formatters to be run in parallel.
 
-  Even better, do `use Benchee.Formatter` which will already implement
-  the `output/1` function for you. This is recommended as `output/1`
-  really shouldn't have any more logic than that, logic/features should
-  be in either `format/1` or `write/1`.
+  The module itself then has functions to deal with formatters defined in this way
+  allowing for parallel output through `output/1` or just output a single formatter
+  through `output/3`.
   """
 
   alias Benchee.{Suite, Utility.Parallel}


  defp is_formatter_module?(_), do: false

  # Invokes `format/2` and `write/2` as defined by the `Benchee.Formatter`
  # behaviour. The output for all formatters is generated in parallel, and then
  # the results of that formatting are written in sequence.

    suite
  end

  @default_opts %{}
  defp normalize_module_configuration(module_configuration)
  defp normalize_module_configuration({module, opts}), do: {module, DeepConvert.to_map(opts)}
