ES6 Object.observe with nested object support - the way I want it.