Does backpropagation update weights one layer at a time?
The answer is implied in the term "backpropagation". All gradients are calculated at the same time. That is, the error from your loss function is propagated backwards from the output and through your whole network. This propagation results in an error associated with each weight in the network, which determines how you change each weight in order to minimize your loss function.


  or do we allow $V$ to update along with $W$?


Yes. This saves time, since many of the results of intermediate computations used to update $V$ can be reused in the update of $W$. 

See http://neuralnetworksanddeeplearning.com for a detailed description of the backpropagation algorithm.