[wip] 1117 factory boy

@tobes @vitorbaptista @domoritz @joetsoi This is <https://github.com/okfn/ckan/pull/1117> but using [factory_boy](http://factoryboy.readthedocs.org/en/latest/) instead of our "static test data" module for creating the test fixtures.

I'm probably going to pull this into <https://github.com/okfn/ckan/pull/1117> but wanted to put it on its own branch first so people can comment.

It was quite simple to define the factory in [factories.py](https://github.com/okfn/ckan/blob/eb6fd0a5ab53f60b0a43a797abcd62a8a45d84f0/ckan/new_tests/factories.py), and then I've updated [test_update.py](https://github.com/okfn/ckan/blob/eb6fd0a5ab53f60b0a43a797abcd62a8a45d84f0/ckan/new_tests/logic/action/test_update.py) to use it instead of the static test data.

It's pretty easy to use, you just do:

```
user_1 = factories.User()
user_2 = factories.User()
user_3 = factories.User()
fred = factories.User(name='fred')
```

It'll generate a unique user name and email etc. for each user.

I made it work by going through the `user_create()` action function though in theory it might be possible to make it go through the model directly (which is how factory_boy would normally work with a normal project to test).