OPEN - issue YZABP-396: Distance values scaling incorrectly on Adding or
Editing an Activity.  https://illuminadev.co.uk/jira/browse/YZABP-396

Remember to use use the scaling when setting from units.
Correct the scaling values for miles and kilometres.
Fix the CnP error that means the alterMetadataFactory hook didn't work.
Extensions can now specify the class they would like to use for
marshalling by implementing "getThingClassname" in the extension proxy.

The default remains \DLS\Healthvault\Proxy\Type\Extension
If the contact is empty the do not include it in the thing.
Add an "equals" method to person to make it easier to tell if two people
are the same.
Add in the missing CareTeam and CarePlanManager properties
Change the scaling factor for grams in kilograms
Merge commit 'ORIG_HEAD'
Correct the logic for defaulting the extension class
Minor fixes to Care Plan:
- Remove TargetDate
- serialise the EndDate
Handle empty duration values sensibly.
Fix the scaling parameters for the weight type.
Reverse the order of the comparison to make the (probably) least
specific entry be first.
Add a new method to allow a team member entry to be replaced by an
updated version.
Merge remote-tracking branch 'origin/master' into pep
Removed category from condition.