Add additional test and fixes to ensure that results are the same when
1) creating a partially paid registration with a pending contribution & then adding a payment to that contribution
2) creating a partially paid registration with a completed contribution for a partial amount
3) created a pending registration with a pending contribution & adding a payment to the contribution.
Note that the following bugs previously affected these flows
- flow 1 & 2 net_amount was incorrect
- flow 1, an extraneous payment was added
- flow 3, participant status was not updated from pending to partially paid on adding a payment