Review repository implementation

* Use variables from githosting class instead of passing them around
* Add missing dependency
Add missing doco
Support ensure => absent for repositories