CRM-15168 Alter pseudo-api getfields to get full metadata

@totten  this was the last PR in that CRm-15168 - I had been waiting to get the others merged through - but basically I think there might be a test failure triggered by this in an obscure place (so re-doing PR to check) but also - you had specifically NOT done getfields the way I have changed it to - so want to check.