allow model constructor with arguments