A named set of source-to-sink matcher routes for trace analysis.
@type matcher() :: (Reach.IR.Node.t() -> boolean())
@type route() :: %{source: matcher(), sink: matcher()}
@type t() :: %Reach.Trace.Pattern.Preset{ from: String.t(), name: String.t(), routes: [route()], to: String.t() }