Remove unnecessary block argument
Add support for extensions
Add documentation
Use new rules for package naming
Use new rules for package structure