doubles are more accurate than float
added constantmodel and variants as a model that does nothing on fit
but delegates everything else to a referenced model