Talk me through the basics?

Yeah, I got that it was an Ember thing, the get and set part, but I’m sure some of the way that is put together is influenced by JavaScript’s strange prototypical syntax. And maybe not, the useable part of your post is that using get and set triggers the data binding to stay in synch. That is cool, and I get now why you want the getters and setters however strange they appear.