Should really be `{?Language}` given that this remains null until the first call to getLanguage().  Perhaps it'd be cleaner to not initialize this lazily though -- have something like a _updateLanguage() function that's called in the ctor and upon rename, and then have a dumb getter that merely returns the field.