Started massive refactor & use Semantic Versioning