Hackathon justin

This is pull request for work started on Hackathon, mainly improving Model class with new coding convention of ModelComponent (e.g. replacing the old property style with the new property style). This also deals with a bunch of issues: #95, #99, #100, #101, #102.
@JustinSi and I talked about this for a while. This is a small mess. Usually, when people setIntegrator, they are passing in a stack-allocated Integrator. In particular, we found about 5 uses of setIntegrator in the test cases, and each time they used a stack-allocated integrator. However, there is a constructor for Manager() that will create an integrator for you if you don't provide one, and it will heap-allocate it and set the ownsIntegrator flag.

Would it make more sense to always use a heap-allocated Integrator (whether Manager creates it or the user creates it), and then the Manager will own it, or to always have it be stack-allocated?