Added decorators. Untested.
Update dependencies version
Add some tests and exceptions