[#3023] Add new extension points to pass the package dict

When creating or updating a dataset, extensions can hook to the
`after_create` and `after_update` methods to receive the validated data
dict. In the create case, the id is added to the dict.
Merge branch 'master' into 3023-data_dict-extension-points
[#3023] Pass context object to extensions on after_create and after_update
[#3023] Add new after_show extension point

Gets the package dict just before being sent back to the controller.
Removed an out of date comment on tests.
 [#3023] Add new after_delete extension point

Gets the context adn data_dict (tipically with just the id) after
deleting a dataset.
[#3030] Move suppress active class into _active()
[#3030] Fix suppress_activew
[#3030] Combine code adding icons
[#3030] Deprecate subnav_named_route() as identical function nav_named_route() exits
[#3030] Remove unused code in lib.helpers - now got via routes
[#3030] Bugfix subnav_named_route()
[#3030] Increase code sharing in lib helpers
[#3030] Further code refactor
[#220] Improve imports in controller.user
[#220] Remove genshi dependency in controller user
Merge branch 'master' into 220-clean-user-controller-imports
Merge branch 'master' into 3030-clean-helper-functions

Conflicts:
	ckan/lib/helpers.py

    trivial merge
[247] fixes #247 by disallowing anonymous users to edit something that they are not allowed to create
Merge branch 'master' into 220-clean-user-controller-imports
[#286] Fix group autocomplete to not show orgs