Crash on accept fixes & refactor

What started as fixing a crash in accepting ToS turned into a refactor of verify since the logic was too hard to follow.

NOTE: This is blocked until the verify endpoint is fixed as per: https://app.asana.com/0/17572817297493/23080729504998

Refactorization:
* Moved the "verify logic" into the verifyUser method, verifyUser helper (postVerify) method, and local method blocks.
* Simplified execution path within the verifyUser call to be a sequence of verification checks. 
** Once all tests pass, call the handler with success.
** At any point of failure, call the handler with fail
** At any single test pass, update the user as needed and recurse verifyUser


I'll put this code the way it should be (line 425) once the verify endpoint is fixed.