[1508] Update ckanext-harvest - Move harvester boiler-plate into the HarvesterBase. CKAN Harvester updated a bit for metadata_modified date.
[1508] Bring in model and other bits from master.
[1508] Merged in a good chunk of ckan/ckanext-harvest master

* model is merged (albeit with the harvest_source_reference DGU modification still for now)
* NOT merged the change to harvest_source stored in SOLR as a package type
* enabling us to continue using the old Web UI (politics makes us) but it uses all the new model fields and logic functions
* NOT merged the move from carrot to pika/redis (to save time)
* ckanharvester is simply copied from master
* Tests fixed up

New functionality for DGU:
* Shows when a harvest is in progress

This is all tested manually with DGU's ckanext-spatial and seems fine.
Merge branch '1508-update-from-master' into 1508-update

Conflicts:
	ckanext/harvest/harvesters/base.py
	ckanext/harvest/harvesters/ckanharvester.py
[1508] Update ckanext-harvest - tag_munge copes with blank tags now. Test added. Renamed base methods that had underscores - seems more appropriate since they are for derived classes to use. (Original method names still work though, for backwards compatibility.)
[1508] Update ckanext-harvest - Deal with extras better. Fix issues raised by tests.
[1512] job-run command now does fetch and gather too. Calls queue call-backs directly.
[1512] job-run command - fixed up. Also fixed the "import object_id" command which imported everything.
[1508] Update ckanext-harvest - Extras added relating to harvest source/job.
[1512] job-run command - job-run now confirms if you restart a job. Also old objects are cleaned up.
[1512] job-run command - Old objects are cleaned up (works).
[1508] Update ckanext-harvest - Catch exceptions durin fetch/gather and log properly. Decided to move the gather/fetch error saving code to model so better accessible.
[1506] CKAN harvester - updated for changes in the BaseHarvester
[1512] job-run command - Delete old objects - just gets confusing when you have multiple sets.
[noticket] When you browse a harvest source, it runs update_job_status, so that ones that have finished but still need flagging as "done" are flagged there and then.
[noticket] Slight visual improvement for showing job status.
[noticket] Fix display of newly harvested objs.
[noticket] Fix issue with viewing status when not a sysadmin, now that it is not auth_allow_anonymous_access.
[1512] job-run command - Delete fetch/gather queues too.
[1326] Make harvest sources public - Fix for view of sources - an editor did not see all the harvesters from other organizations.