Generalized our new source validator

And added validation to the event creation / editing page.