global: more tests added

* Adds tests for final XML outputs for Elsevier, EDPS and APS.

* Adds test flag to get_record function in elsevier_package
  to not add the FFT tag because the file location
  is environment dependent and cannot be used for testing.

* Adds new escaping of ampersands in XML, along with tests.

* Removes references using refextract from tests.

Co-authored-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
utils: refactor XML escaping

* Refactors the XML escaping to also take in to account < as &lt;.

Co-authored-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
utils: fall back to text node

* Falls back to text node should parseString raise ExpatError
  when calling record_add_field with erroneous data.

* Adds a test to cover this case.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
harvesting-kit: Adds nations field while harvesting

* Adds add_nations_field to utils.py to check affiliations and add
  the corresponding nation. 'HUMAN CHECK' if something went wrong

* Adds '--extract-nations' flag to valid arguments, since currently
  only SCOAP3 is going to use the nations field

Signed-off-by: Martin Vesper <martin.vesper@cern.ch>
Merge pull request #72 from mvesper/add_nations_field_in_harvesting_kit

harvesting-kit: Adds nations field while harvesting
ftp_utils: fix for creating folders
Elsevier: automatic update of delivery dates for packages.

* Adds date of delivery for packages downloaded from Elsevier,
  data are stored in database. DOI of articles are associeted with
  packages they come from (one doi can be connected to multiple
  packages - updates of article).