[#1386] Add factories for Dataset and Resources
[#1386] Allow to define auth user when using factories

When creating an instance of the factory, users can provide an 'auth_user'
keyword argument with the name of the user that should perform the action.
If they don't provide the 'auth_user' argument the site user will be used
(this user is a sysadmin). If the action should be performed anonymously
(ie no logged in user), auth_user=None should be provided.

Note that the keyword argument could not be named 'user', as some action
functions use this same parameter.
[#1386] PEP8 fixes
[#1364] Change labelling on homepage search area
Add a block for extension authors to extend
Merge branch 'master' into 1386-improve-factories

Conflicts:
	ckan/new_tests/factories.py
[#1386] Fix bug when creating multiple sysadmins
[#1386] Add basic tests for the factories

These tests are very simple: try to create two objects using each factory, but
they already helped me find some bugs (fixed in this commit).

This also guarantees that we can safely call each factory with no parameters,
and they're not reusing unique variables (like was the case for the Sysadmin).
[#1386] The factories' tests must work without reseting the DB between methods

The factories' methods should work no mater which order they're called, nor how
many times they're called. Because of this, we don't need to reset the DB
inbetween each test method. If this doesn't work, it's because the factories
are broken.
[#1386] Fix _get_action_user_name() docs, as we renamed auth_user -> user
[#1386] Fix bug where the dataset factory didn't allow to use anonymous user
[#1386] Simplify docs for _get_action_user_name()

The documentation on how to create, for example, a Dataset with an specific
user is specific to the Dataset factory. The same can be said for any factory
that allows an user.

It would be good to use the same pattern (passing a user dict as "user" to the
factory) in all factories.
[#1386] Use a unique name for each created Resource
Removed clean_action_name as it causes confusion
Merge branch 'master' into 1364-search-form-label-tweak
Merge pull request #1364 from ckan/1364-search-form-label-tweak

[#1364] Homepage search fixes
[#1386] Small refactoring in a factories' helper
Merge pull request #1386 from ckan/1386-improve-factories

[WIP] Improve new tests factories
Merge remote-tracking branch 'origin/1625-remove-clean-action-name'