Bug 1006569 - [privacy] Add checkbox at sign-up

Functionally works fine for me and all the tests pass too.
I will add the unit tests and modify helper text later today and need to discuss about the deletion of user email from database usecase.

I know that most of the time we would be able to give them the username in first iteration, but the thing is we don't need how many iterations we need.
In most cases it would be around 1-2.
So I added this code intentionally, this will not go in infinite loop. This is a recursion and will stop as soon as it gets a unique username.
@bobsilverberg  please let me know if this is fine ?