User and Organisation page suppor / Custom source and destination branches

Adds support for User and Organsiation pages by allowing the specification of source and destination branches.

User and Organisation pages need to be served from the master branch of a
repository named `username/username.github.io`. Currently middleman-gh-pages
only allows deploying to the `gh-pages` branch. This commit adds support for
custom source / destination branches specified with enviroment variables.
For a User page with a source branch `source` the publish command would be:
`rake publish SOURCE_BRANCH=source DESTINATION_BRANCH=master'