Selector Pattern + demo refactoring

No multiple return types in memberships, only the boolean
Delegate the whole selection part to the selector parameter annotation