[#781] Begin improving IFacets docs

Better docstrings and an example extension for IFacets. Both still need
some work..
[#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
[#790] Tutorial for custom fields in packages
[#790] add custom fields tutorial to extensions index
[#790] clean up formatting
[#790] resource customization tutorial

also added resource example to idataset form example
[#790] add tag-vocabularies to custom-fields tutorial
[#790] fix titles to match docs style guidelines
[#790] custom fields tutorial

move source for tutorial into it's own files
[#790] custom fields tutorial

* Add tests to example_idatasetform plugin.
* Split out source from tutorial into plugins so they can be tested
* Use sphinx referencing
* Add section on validators and conveters
* Minor rewrites, fix titles, etc.
[#790] undo doc subproject commits
[#790] remove unused plugin version
[#790] pep8, fix tests by preventing plugins from loading during import
[#790] IDatasetForm tutorial cleanups
[#790] IDatasetForm tutorial: add dataset search page sorting
[#790] Add IDatasetForm search template
[#790] idatasetform tutorial cleanups