Initial refactoring of Variable provider and the way variables are gener...

...ated. Also using SemVer 2.0

Fixes #113 currently

I plan on doing more to this