Add validations for float-based Character fields

Check to see whether Character.total_points and Character.used_fatigue are
multiples of 0.25. If they are not, raise a validation error. Insert these
checks into the model itself.
Create factory for the Character model.

The new factory can be used to generate entire Character objects or individual
Character attributes. The factory is hooked into the testing framework via the
new ``tests``module.
Improve readability of Character model.

Rearrange some fields and add a comment.
Add doctests for method validate_quarter