Workaround QML model resetting bug

QML doesn't update roleNames in modelReset signal handler, which means
that our dynamic model can be broken after reset. To workaround it
we never change id of a role and we use predefined roles with a constant
id.