#493 - Create `removeContentFromLibrary` method in ContentAPI

Content can now be removed from a principal's library via the:
  /api/content/library/:principalId/:contentId
endpoint.

The discussion module has been slightly refactored. Some of the methods
have been moved over to the authz and library modulse and 
have been generalized.

`removeContentFromLibrary` relies on the same APIs as the 
`removeDiscussionFromLibrary` API.
Issue #484 - Added a testcase for actor->object and actor->target tenant boundaries

* Checking the visibility of target users that we're sharing with.
* Splitted out the tenant sharing tests into a separate file.
* Moved the createMultiTenantPrivacyEntities to the tests utility.