Split functionality

`Common` can be used without whole `Model`. It received disabling functionality and all the variables. It also ensures an instance of config is created. `Tracked` only has two methods that control a higher level functionality. It seems like all the functionality is in `Common` and there are extensions that wrap it's functionality.