Added sudo functionality

-Param can add sudo, allows sudo in header
-Updated some calls to allow optional hash this allows for sudo to be used in various calls. This is not strictly necessary but reads better


This is dependent on this gitlab upstream: https://github.com/gitlabhq/gitlabhq/pull/3525