Moving from AR validations to dry-validations

It is 100% going to change, unfortunately.

Hopefully this will make it easier to do more complicated things with it. I’ve been having a hard time with it, but the ActiveModel stuff just doesn’t fit my use-case at all.