Added AlephRx::Database and AlephRx::Report classes. Revised the ALEPHform.cgi to use the object model to create new reports.
LIBILS-45. Created a first draft of the endpoint for the web service to submit reports.
- The endpoint.cgi requires a POST request of application/xml or text/xml, parses the body using XML::Simple, and if there are no errors, submits a new report to the database.
- Responds with the URL of the new report's details page if successful.
- Moved the validation code from ALEPHform.cgi into Database.pm (as validate_data() method).
- Added the provisioning dependency of XML::Simple to the development environment manifest.
LIBILS-45. Endpoint responds with a "415 Unsupported Media Type" status if the wrong content-type is submitted.
LIBILS-45. AlephRx::Database enhancements.
- Added a new_from_env constructor.
- Added a name and synopsis section to the perldoc.
LIBILS-45. Created an api directory for the web service script.

- Moved endpoint.cgi to api/reports
- Added a README with HTTP API documentation
LIBILS-45. Install the perl-Moose package as part of the development environment provisioning.
LIBILS-45. Changed created report response from 200 to 201.

Also updated API documentation.
LIBILS-45. Fixed typo in the API docs.
LIBILS-45. Use the AlephRx::Database instead of directly accessing DBI.

- Create a single AlephRx::Database object for each script and reuse its dbh attribute instead of directly calling DBI->connect
- Use the AlephRx::Database::new_from_env constructor to pick up the ALEPHRX_DATABASE_* values
Link to the development VM and API documentation from the main docs README.
LIBILS-45. Documented the reports POST request XML format.
LIBILS-45. Added dummy XML data file and instructions on how to test the HTTP API in the development environment.
Updated API documentation to match the development environment configuration.
Include reason phrases in the HTTP response status lines generated by the reports API script.
LIBILS-45. Added support for application/x-www-form-urlencoded POSTs to the report submission endpoint.

- Added a parse_request() function that returns a hashref of the POSTed data, suitable to pass to the AlephRx object model.
- Added support for form parameter POSTs (application/x-www-form-urlencoded).
- Added a dummy.txt sample form data file, for use in testing the endpoint in development.
- Updated API and development VM documentation.
LIBILS-45. Match the beginning of the Content-Type header, to allow for media type parameters to be added.
LIBILS-45. Finished initial version of the HTTP API endpoint for submitting reports.

- Added AlephRx::Database class; each script uses a single AlephRx::Database object instead of creating multiple DBI connections
- AlephRx::Database also handles the validation of report data and the creation of new reports (returned as AlephRx::Report objects). This way, these are centralized and can be called from both the user form script and the HTTP API script.

Merge branch 'feature/LIBILS-45' into develop

Conflicts:
	cgi-bin/ALEPH16/ALEPH/ALEPHform2.cgi
	cgi-bin/ALEPH16/ALEPH/ALEPHurecord.cgi
	cgi-bin/ALEPH16/ALEPHreply.cgi
	cgi-bin/ALEPH16/ALEPHxreply.cgi
	cgi-bin/ALEPHemail.cgi
	cgi-bin/ALEPHform.cgi
	vm/manifests/simple.pp