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
CRM-13067 fix up membership date setting to be done in BAO & work for API
Merge branch 'CRM-13067-bao-prep' of https://github.com/eileenmcnaughton/civicrm-core into CRM-13067-bao-prep

Conflicts:
	api/v3/Membership.php
	tests/phpunit/api/v3/MembershipTest.php

----------------------------------------
* CRM-13067-bao-prep:
  http://issues.civicrm.org/jira/browse/CRM-13067-bao-prep