I'll start working on  `cyder/cydns/validation.py` in a new branch. There's the refactoring bit, but the validation needs to be stricter too.

(For instance, it currently allows labels to have leading and trailing hyphens.)