Nick/initial models fixes

@qiuey00: I've opened this pull request to fix what I believe are some issues and/or bugs in the model work that you did. After reviewing my changes, if you think that what I'm saying makes sense you can bonk on the "Merge pull request" button and that will merge these changes to the `initial_models` branch. Then you can run "git pull" on your local development environment (assuming you don't have any local changes to these files) and your local copy of the `initial_models` branch will be updated to include my changes.

Although the commit messages for each of the five commits are fairly self-explanatory, I'll add notes to each commit so that you can learn from the changes I'm making.