Lazy permissions fix#38

I've run the full test suite a few times after making all of these changes, and I'm having random various tests inconsistently fail. Any idea what's causing this?

Otherwise everything seems good. Only thing missing from the tests is the Document type, but the Document model inherits directly from Generic Work, so I think it's a very low risk omission. Let me know if you'd prefer that I add a test there.

Otherwise, after this pull request is merged, I'll add a page to the wiki documenting this change.