Add missing initialization of existing_org in organizations selector.

Without this initialization the organizations selector doesn't select the current organization.
[#1199] Make sure we can remove datasets from organizations through the API. The problem was that the validator removed the owner_org from the data dict when it was empty.
[#1199] Upgrade select2 to make it possible to select item with empty value.
[#1199] Fix the package_update and package_create validator to accept an empty org but not None.
[#1210] Add auth_user_obj to context in check_access

If not already there or ignore_auth is True, and the context has a user
name, try to see if the user actually exists in the DB, and store the
object (or None if not found) in context['auth_user_obj']. The check if
performed only once per context object.
[#1210] Fix side_effect_free check

It should be in place if it is an action function from get.py and it
hasn't already been set.
[#1210] Require a logged in user by default except for get actions

By default, any auth function not in get.py will not allow anonymous
access, ie will require a logged in user to be performed. Core auth
functions are automatically configured when building the `AuthFunctions`
cache, but two decorators are provided to allow defining exceptions
in both cases and extensions to define the behaviour on their own auth
functions. The decoratos are `auth_allow_anonymous_access` and
`auth_disllow_anonymous_access`.

`check_access` will check for the auth_allow_anonymous_access attribute
on the auth function, and if False and there isn't a validated user
object in the context, it will raise a NotAuthorized exception.
[#1210] Fix auth tests and tweak auth functions

Add the anon access decorator to some functions as they require it in
some circumstances.

The storage controller was calling `is_authorized_boolean` directly,
which should be never done (same for `is_authorized`).

It would be god to refactor password_reset out of user_update, so
user_update does not require anon access.
[#1210] Add decorators to the plugins toolkit
[#1210] Yet more tests fixes
[#1210] Add user object to context in controllers

The base controller already checked whether there was a user object in
the db for the user name provided. If we added it to the context we save
the same check on check_access.
[#1210] Minor changes after review
[#1210] Add some docs
[#1199] Change 'Select an organization' to 'No organization'

When creating or editing a dataset, the dropdown for selecting the
dataset's organization contained an item labelled
'Select an organization...' that, if selected, would set the dataset to
belong to no organization (removing it from any organization it does
belong to). This seems quite confusing, change the label to
'No organization' to make it clear what it does.
Correct breadcumb link in reset password template
Merge branch 'master' of github.com:okfn/ckan into 1199-fix-package-owner-org-edit
[#1230] add extras block to package/snippets/additional_info.html
Merge branch 'master' of github.com:okfn/ckan into 1199-fix-package-owner-org-edit
Merge pull request #1230 from okfn/1230-additional-info-extras-block

add template block for extras in package/snippets/additional_info.html
Merge pull request #1225 from okfn/1225-reset-template

Breadcrumbs on password reset page links to register