Put harvest_source_id in quotes to prevent Solr errors
Add quotes to harvest_source_id in Solr query when clearing harvest sources
[#70] Fix Add harvest source button not showing

Due to changes in the templates starting on 2.1 the add source button
was not showing. The whole search template has been simplified,
separating in a separate file the 2.0 only code.

Tested in 2.0, 2.1 and 2.2
Fix resource updating for harvested datasets

Starting from 2.2, resource_update calls package_show before updating
the resource via a package_update call. The dict passed had the harvest
extras (eg harvest_object_id) added which made the update call fails due
to duplicated extra keys. To fix it we now remove any harvest extras
on after_show if there is a 'for_edit' property on the context.
[#76] Add extra fields to the source schema

Add 'private' and its core validators, and 'metadata_modified' and
'metadata_created'.

Also ignore '__extras'
[#76] Use harvest_source_show on reindex command
[#77] Use auth_allow_anonymous_access decorator

Starting from 2.2 you need to explicitly flag auth functions that
allow anonymous access with the p.toolkit.auth_allow_anonymous_access
decorator. A local version of the decorator is used to ensure we only
use it on CKAN>=2.2
Wrap tag munging code in config option, defaulting to False.
Removed extra newline.
Config option to munge tags changed to be consistent with other config options in this extension, and noted in README.
Moved clean_tags check into _create_or_update_package method.
[#83] Fix key error when using default_groups
[#84] Fix auth audit exception when creating datasets

This was caused by a combination of the auth audit leaking and the
harvester reusing the context for the package_show and package_create
actions. If the package is not found, package_show does not call
check_access, and the auth audit does not pass. This is stored in the
context (`__auth_audit`) and is raised next time that we call
get_action (when we call package_create with the same context)

It could potentially be fixed on master, but it is probably quite rare.
[#80] Support for Python 2.6 when handling xml exceptions
[#87] Remove remote url_type from resources

Otherwise CKAN thinks they are uploads, datastore resources, etc, which
it can cause problems eg when displaying the URL of the resource. We
are just linking to the remote resource URL.
[#86] Fix duplicate extras
Update plugin.py

Updating plugin.py to check for the existence of the extras key in the data_dict.
Merge branch 'release-v2.0' of github.com:ckan/ckanext-harvest into release-v2.0
[#97] Persitent endpoint for datasets harvest objects

Contrary to `/harvest/object/xxx`, this endpoint is passed the dataset
id, thus it not depends on a particular object but the most recent one.
Merge branch 'release-v2.0' of github.com:ckan/ckanext-harvest into release-v2.0