added some more email validation, begin to add nicer error output