Clean the code and make it more clear

Do not be afraid of all the changes please, and if you not agree with certains ones, just tell me which one.