Master api date multiple values

Hi,
Bunch of commits.

Commits marked TIDYUP are cosmetic.
Commits marked FIX or FEATURE are changes.

Main issues are date handling and internal author id's (author_suggestor).

For the dates, the API was looking for this type of format
eg
      <xsdmf_value>
        <year>2002</year>
        <month>02</month>
        <day>02</day>
      </xsdmf_value>

So I've put that into the xml template when we GET edit_metadata so that returned xml with all the xsd_display_field's can be used and POSTed back and not cause date parsing issues.

Happy to revise this as required.

I'm wondering if we should perhaps move the api templating for xsd_display fields to its own template, atm we're using and modifying the xml template here: workflow/enter_metadata.tpl.xml .

For the internal author id's
* I've relaxed the suppression of author_suggestor in the edit metadata output so it shows up as an xsdmf_display_field entry in the xml
* and I've included the xsdmf_attached_xsdmf_id so id's can be related to their parent.
For the author ids (fez_author.aut_id) the API user can GET edit_metadata (initiating a worfklow session) and then set them in the result xml output eg:

    <xsd_display_field>
      <xsdmf_id>6346</xsdmf_id>
      <xsdmf_value><![CDATA[123]]></xsdmf_value>
      <xsdmf_value><![CDATA[0]]></xsdmf_value>

which should correspond to the parent of this attached xsdmf field, ie a corresponding list of author names
eg
    <xsd_display_field>
      <xsdmf_id>6351</xsdmf_id>
      <xsdmf_value><![CDATA[Smith, Richard]]></xsdmf_value>
      <xsdmf_value><![CDATA[Adams, Matthew]]></xsdmf_value>

I've only been looking at edit scenarios (of existing records).

Regards,
Daniel