more updates to the model file, still needs lots more functionality