CRM-13067 refactor recordMembershipContribution into MembershipPayment::create step one

CRM-13067 refactor recordMembershipContribution into MembershipPayment::create step one

CRM-13067 reinstate change to fn signature lost during gitting
CRM-13067 mini-refactor - make  options per wiki BAO std (ie. params holds
ids & ids is optional / on the way out

CRM-13067 mini-refactor - make  options per wiki BAO std (ie. params holds
ids & ids is optional / on the way out
CRM-13067 preparatory tidy-up on membership-payment api

CRM-13067 preparatory tidy-up on membership-payment api
CRM-13142 , CRM-13067 update tests to date setting is tested correctly
CRM-13142  as we have now have a unit test for date setting, dates do not need to be a reserved profile field