Add Abstract Decorator
Fix pass param bug.
Add cache Decorator
Some refactor of decorators