Add basid membership editing

This allows owners/managers to edit people in their groups. You can
set/change expiration and roles. If you set an expiration to be now then
the user can expire out of the group.

For the moment, this suffices to remove someone from a group until that
is added.

Additionally, this commit fixes up expirations in requesting to join
groups and makes that experience more functional.