Why are new users having their role deleted on signup?
The problem was caused by the module 'Civigroup Roles Sync'.  Adding the new user with a role that was synced to CiviCRM caused the user's role to be dropped because in CiviCRM they weren't in that group.