well, so much argments start smell, why not construct it from hash in class?
so
```
Extension.new(extension)
```
and later pass it in constructor