A way to absorb & combine metrics into a single set, keeping track of min/max/count, etc.
While this is just a map underneath, treat it like an opaque data type.
options() :: %{collapse_all: boolean, compare_desc: boolean}
t() :: %ScoutApm.MetricSet{data: map, options: ScoutApm.MetricSet.options}
new() :: ScoutApm.MetricSet.t
new(ScoutApm.MetricSet.options) :: ScoutApm.MetricSet.t
to_list(ScoutApm.MetricSet.t) :: [ScoutApm.Internal.Metric.t]