add branch management

new branch functions: 

* protectBranch
* unprotectBranch
* createBranch
* deleteBranch