Add raw version for ResourceUrl and buildAndExecRequest

Gitlab use URL-escaped `/' for API to fetch project related
resources by its namespace, so it's looks like:

    namespace%2Fproject-name

The problem is Go's `http.NewRequest` use `url.Parse`
which in turn unescape the `%2F' automatically.
The only way to keep the escaped char is to use Opaque params at URL
as noted at: http://golang.org/pkg/net/url/#URL

Here is the first attempt to work-around the limitation,
we introduces another version of `ResourceUrl` and `buildAndExecRequest`
each called `ResourceUrlRaw` and `buildAndExecRequestRaw`, respectively.
`ResourceUrlRaw` will returns concatenated url and the opaque params, and
`buildAndExecRequestRaw` may accept opaque params in addition of url.
Change all project related to use ResourceUrlRaw and
buildAndExecRequestRaw
Add support for parsing web hook payload.
Add docs on how to retrieve namespaced project.
Add helper to get branch and HEAD commit from push hook.
Add support self-signed certificates
Merge branch 'Bugagazavr-patch-1' into raw-request
Use cli flag to decide if client should skip certs verification
Retain DefaultTransport behavior
Merge pull request #8 from fudanchii/raw-request

Add support for fetching project's resources by namespace.