Extensive unit test coverage on character.py
One less potential crash