Fix nasty bug I made by validating person name

Yeah so, that. Now I don't choke and throw scary errors
Minor cleanup

add tests :)
Tests!

Adding tests and some mechanics to make them work.

Even fixed a bug.

We've got 7 now :)
More tests!

And fixed a bug with unicode
Merge branch 'docs-and-tests' into backend
Reorg the code! (and tests)

Now you can test easily and stuff. Also fewer files.
Merge branch 'docs-and-tests' into backend