Lots of refactor
Remove global decorators, class decorators, make things more clear