Refacto Guidelines and fixes