Refactoring Part II
Merge pull request #147 from cordoval/refactoring_2

[WIP] Refactoring Part II