Trigger hooks on contribution update and change one executeQuery to use API
@monish.deb can you review this
@KarinG @AlanDixon I found that changing to use at least APIv3 in L515 was not doable because the API is preventing us from changing the contribution status from Completed -> Pending Refund or Completed -> Pending Payment or similar.
I found doing this didn't break any unit tests that we currently have and hopefully will resolve the problem indicated