Adds model updating

Models can now update themselves. Also implemented a few -path methods. We should remember to implement these in our model classes.