oaiharvest: add arguments to post-processes

* Updates the OAI harvest admin interface with the possibility
  to add various arguments to post-harvest processes.
  (fixes #547)

  * Arguments for each post-process are now defined inside
    a new config file: oai_harvest_config.py

  * Adds several arguments to the existing post-harvest
    processes run after a scheduled OAI harvest.

  * Enhances and simplifies several parts of the UI workflow
    and look.

  * Moves DB functions in business-model into a new
    database-layer: oai_harvest_dblayer.py

  * Comments for OAI harvest sources are now actually displayed.

  * Changes column 'argument' in oaiHARVEST table from TEXT to
    BLOB. (invenio_upgrader compatible)

  * Removes column 'bibconvertcfgfile' and 'bibfilterprogram' in
    oaiHARVEST table. (invenio_upgrader compatible)

* Fixes bug causing holding-pen UI to break with python > 2.4,
  as well as another display bug with the same interface.

* Moves Javascript relating to holding-pen into a new .js file,
  away from standard Javascript for the OAI Harvest admin
  interface.

* Adds a new CSS file for OAI harvest admin pages.

Conflicts:

	modules/oaiharvest/lib/oai_harvest_daemon.py
	modules/oaiharvest/lib/oai_harvest_admin.py
	modules/oaiharvest/lib/oai_harvest_templates.py
	modules/oaiharvest/web/admin/oai_harvest_admin.js

Conflicts:

	modules/oaiharvest/lib/oai_harvest_daemon.py
oaiharvest: improve single harvests

* Adds the option to harvest a certain OAI record that will
  be taken through the correct source configuration.

* Adds new functions to oai_harvest_dblayer.

Co-authored-by: Daniel Stanculescu <daniel.stanculescu@cern.ch>
oaiharvest: web-interface harvest improvements

* Re-structures code in oai_harvest_deamon to be more
  clear, with less duplication and easier to understand.

* Improves the web-interface for manual OAI harvest to
  create deamon tasks for one-shot harvest.

* Adds mail and ticket reporting features after finished
  harvests. Available through --notify-mail-to=MAIL and
  --create-ticket-in=QUEUE CLI commands.

* The task log viewer web-interface is now automatically
  refreshed every minute.

* Adds a new file oai_harvest_utils to contain useful
  functions across the module as well as reducing the
  amount of code in oai_harvest_daemon.py

* Contains several bug-fixes and minor improvements to
  both source code and web-interfaces.

Conflicts:

	modules/oaiharvest/lib/Makefile.am
	modules/oaiharvest/lib/oai_harvest_daemon.py

Conflicts:

	modules/oaiharvest/lib/oai_harvest_daemon.py
oaiharvest: use tmp-shared instead of tmp
oaiharvest: solves 2.4 compatability issues
oaiharvest: update model
oaiharvest: fix CLI program
OAIHarvest: configurable selective post-processing

* Allow to selectively apply post-processing phases to each
  individual harvested record. To do so override function
  oai_harvest_templates.tmpl_should_process_record_with_mode().
  Closes #1477

Conflicts:

	modules/oaiharvest/lib/oai_harvest_daemon.py
OAIHarvest: consider source_id for selective post-processing

* Added source_id parameter to function
  oai_harvest_templates.tmpl_should_process_record_with_mode()
  in order to enable decision based on harvesting source.

Conflicts:

	modules/oaiharvest/lib/oai_harvest_daemon.py
legacy: migrate OAIHarvest CLI

* Migrates the CLI of OAIHarvest to the new method.

* Fixes bad import in upgrade script.