Several refactorings made on the character model. Still I'm missing
something...