refactoring a lot and starting on the avatar