adding nscoder, this is to make the models themselves saveable