Duff.SingleStatsType
	SingleStats(d::Int)
	SingleStats(s::Vector{Float64}, q::Vector{Float64}, n::Vector{Int})

	Initiates statistics for a DAF with a tracking only single variable
	`s` holds a the sum of contributions of each sample
	`q` holds a the sum of squares of contributions of each sample
	`n` holds the number of times each sample is updated
Duff.getmaskMethod
getmask(d::Daf,p)

create mask with `p` fraction of samples present
Duff.meanscoreMethod
	meanscore(d::Daf)

	return the basic DAf score --- difference of means when features is present and absent
Duff.onlinedaf!Method
	onlinedaf!(daf, onestep, p, n, warmup::Int = 0)

	opdate daf `n`-times with mask containing `p` fraction of features
	`onestep` is a function `(mask) -> f` which accepts mask as a feature
	and return value of the criterion used in daf
Duff.update!Method
	function update!(s::Daf,f,mask)

	updates DAF statistics assuming that mask identifies which
	samples are present
Duff.update!Method
	update!(s::SingleStats,f,mask,negate::Bool)
	update!(s::SingleStats,f,idx,negate::Bool)

	updates the stats with a value `f` contributing to samples in from `idxs` or `mask`. If `negate` is true, `mask`
	is negated / `idxs` are set to complement of `idxs`