Remove unecessary node updates in driver

Today, the driver updates provision_state and target_provision_state
unnecessarily in a few places. Ironic itself will do this before and
after calling various driver methods. This change updates the driver
to perform less unnecessary updates to the node.