Add the vhost options timestamped_deploy and exec_(while|before)_down

With the switch to the asset pipeline, Alaveteli takes a long time
to deploy - the asset precompilation can take a couple of minutes.
This commit adds a 'timestamped_deploy' option which instead does
the initial deploy into a timestamped directory, which is symlinked
into place with minimum downtime.  This replaces the exec_extras
option with exec_before_down and exec_while_down; the former for
most pre-deploy preparation, and the latter for tasks that should
be run when the vhost is down (typically database migrations).