fix member registration such that it correctly deals with userid/login_name split, works with collective.emaillogin4 properly
more throrough invalidation of cached keys on membership changes; workgroup/roster refreshes group keys
explcitly name the username/email address of the user to be purged in the confirmation overlay purgeuser.pt
Membership tab: fix incorrect use of case-sensitive email adddress in group checking when loading grid; this addresses cases where the email address property differs in case from the normalized username.
User info overlay/view now gets user workspaces without incidental duplication, and uses a new utility function for cleaner lookup.
Fix failure of user.utils.user_workspaces() on no contained workspaces.
delete member data directly using PAS, not using portal_memberdata, and do this before deleting the user from management plugins; also, search should not include any cruft from previously deleted user data
fix issue changing roles of users with hyphen character in username
membership.js syntatical fixups: put code in IIFE, make slightly more modular, abstract jQuery namespace to $ inside the IIFE
simple clear after floats in membership tab after register/search buttons