Hierarchical sampling for arbitrary param sets with dependencies, where the user specifies 1D samplers per param.
Dependencies are topologically sorted, parameters are then sampled in topological order,
and if dependencies do not hold, values are set to
NA in the resulting
smpl = SamplerHierarchical$new(param_set, samplers)
param_set :: ParamSet
Domain / support of the distribution we want to sample from.
See Sampler. Additionally, the class provides: