Do instance _definition properly with prototypes instead of shadow objects.

This allows us to still reference this._definition
directly without having to do _.extend/defensive lookups
every time to determine if a definition is defined
on the instance or the prototype.