Added support for custom fields

Can push custom fields, generate the correct xml, and query their id. Added custom parameter for pushContacts that allows you to submit custom fields when adding a contact.