Fixed some linting issues
Refactored modules

Extracted duplicated methods to abstract prototype
Implemented value module
Refactored Datapoint
Added IfElseModule
Updated dependencies

Have to fix sinon to version 1.9.0 because the version 1.9.1 have some
issues on fake timers