For example, in Upgradable contract make these functions "external" instead of "public":
setUpgradeMaster()
upgrade()
in CtdToken, function create() should be "internal", as it is the best to call it from a Fallback function.
returnWei should be "external" and so on...
As for best practices, you should use external if you expect that the function will only ever be called externally, and use public if you also need to call this function internally.
It is always suggested to explicitly mark function's visibility, as, for instance, calling external function consumes less gas than public function. This would save you some money.
For example, in Upgradable contract make these functions "external" instead of "public": setUpgradeMaster() upgrade()
in CtdToken, function create() should be "internal", as it is the best to call it from a Fallback function. returnWei should be "external" and so on...
As for best practices, you should use external if you expect that the function will only ever be called externally, and use public if you also need to call this function internally.
It is always suggested to explicitly mark function's visibility, as, for instance, calling external function consumes less gas than public function. This would save you some money.