This could be me being a total newbie, but when I was testing the registration and the reset password pages, I don't receive an email when testing both pages.
I registered three email addresses and the validation email didn't arrive for any of them. Everything else works for me as it is supposed to, but it seems to be a problem with the mail function. To my novice eyes it looks correct.
I won't bother to post all of the page code, except for the mail function from the registration.php page. Is there any reason why this function won't send a validation email?
// Send a separate email?
$body = "Thank you for registering at <whatever site>. Blah. Blah. Blah.\n\n";
mail($_POST['email'], 'Registration Confirmation', $body, 'From: admin@example.com');