added state and item rule unit tests
Added unit test to all data and startes cloning function from underscore.js
Added clone method to all data classes
Refactor to improve readability and maintainability
Added more unit test to assure a basic coverage