Modifications SFModel

Improvement on the model and the way it handles different type