User/internal Membership split Part I - rename everything to the internal names
Introduce the user-facing Membership abstraction
Move the now private membership and associated interfaces to the impl package
Added user-facing cluster membership change method.