moving reminder email sending functionality into user model, and adding tests to check the operation