actually this function should probably take a second argument for the identifier that defaults to this so that we can use it for other stuff.

that would mean making it not-a-property, but you could still use it in templates so i think that's fine.