Implementation ref

Resolves #14 and implements a new interface for implementations on Role and Permission providers