Makes the root collection publicly readable when created.
Adds three modules breaking out common functionality from the mess that used to be the NuCollection class.  Embargoable allows us to declare that a given object should be subject to embargos and provides logic for checking if said object is under embargo.  Mass Permissions allow us to toggle through public/registered/private group sets and get the current permission level for an object.  Inherited Restrictions is still a bit stubby at the moment, but should theoretically allow us to ensure that children objects do not set permissions that would be verboten according to their parents.
NuCollection and NuCoreFile now implement our rights relevant modules.  Eliminates nu_collection_spec tests that are more appropriate in module code tests.
Merge branch 'develop' into feature/sieving_permissions

Merging in David and Steven's changes.
Updates the new action for controllers to completely disallow attempted creation of a collection without a parent set.
Users interacting with the front end should no longer be able to select a permission for a collection above what its parent would allow.
Eliminates an unused session call in the new action.
Kludgey first attempt at ensuring that files can't set permissions above that of their parents.  Works but is ugly and quite stupid.
the controller for NuCoreFile now returns after any of the redirects it might perform.  Tests for said controller updated as well.
Eliminates the single file upload spec, which was barebones anyhow and will need to be completely rewritten at some point.
Merge pull request #66 from nu-lts/feature/sieving_permissions

Feature/sieving permissions