Completed first draft of hmc update method