Store rejected roles even if user doesn't accept the license

If the user doesn't accept the license but accepts some roles, the
status of those roles are reset.

Close #155
Merge pull request #156 from Connexions/reject-license-and-roles

Store rejected roles even if user doesn't accept the license
Update copyright_holders when licensors is updated and vice versa
Fix permission issues regarding roles

 - Only give publish permission once a user has accepted the publisher
   role
 - Always give a user view permission if the user has roles awaiting
   acceptance
 - Add test case for partial role acceptance
Merge pull request #157 from Connexions/remove-all-roles

Fix permission issues regarding roles
Move (mostly immutable) testing config into testing package.
Adjust the publishing.url setting to a url without path.
Add testing settings to allow for unmocking archive and publishing.
Framework for intercepting archive and publishing requests.
Adjust travis config to utilize the testing intercepts.
Merge pull request #122 from Connexions/testing

Intercepting archive and publishing requests in tests
Add intercept framework to the testcase.
Revise loose-pages publication test using intercept.
Revise binder publication test using intercept.
Import cnxarchive and cnxpublishing at the module level, since they are now deps.
Use requests lib to derive from archive.
Fix test for derive-from not found.

Depends on https://github.com/Connexions/cnx-archive/pull/273
Fix acquisition of resource on derive.

This fixes derive-from to fail when content cannot be fully derived.
This also switches the usage of urllib2 to the requests library.
Test derive content with resources.
Replace json.loads with webtest's response.json property.