Validate boards

Eventually I'd like to rewrite it to streamline any future addition of more checks, since the way it does it right now is a little awkward, and I'm not sure I like the function names, but it gets the job done. Also would want to add some automated unit checks, because the logic is simple but a little fiddly.