Initial role implementation

Mmm, I did miss `selectattr` before, let me see.