Add Rake "publish" task

This is an inglorious hack job, but it effectively gives us a command we
can use to update the gh-pages branch from the latest built source.

Much of the song and dance is required because Git gets twitchy about
submodules appearing and disappearing when you switch branches; we keep
it quiet using the shotgun approach of deleting troublesome directories
before switching.

Change-Id: I184bf5f316c2b7e012f85742746bb876d2787c1b
Reviewed-on: https://gerrit.causes.com/30095
Tested-by: Greg Hurrell <greg@causes.com>
Reviewed-by: Shane da Silva <shane@causes.com>