Allow mklive outside master

This allows the mklive script to work correctly outside master, so unmerged branches can be staged for testing.

The branch on staging is given a "test-" prefix to denote its unofficial status.

The push script now checks that the revision on staging starts with "live-", which should prevent "test-live-*" branches from being pushed to live.

I also modified the gollum scripts slightly so it's easier to see what's going on.

@jketreno, could you please review, especially to check whether the modified test in push.sh will be adequate.