Warning cleanup.
Made some entity properties readonly.
Property changed event for IEntityProperty

Also hooked up to Goat object property changed so it can be reflected to
IEntityProperty.
Hacked in a property grid to start testing things

Lots of issues still need to be resolved

Pathway from Goat object to property grid worries me.
- Should object changes be batched per frame or only count when they
come from a Action?
- How do we not spam the system with change events?