Refactored access checks in content API

1. canManage
Retrieve the raw content profile and performs 1 authz check rather than
doing 2

2. getFullContentProfile
Retrieve the raw content profile, retrieve all the roles, perform an
implicit check and check the roles if implicit granted no access
Added an annotations module

This module exposes functionality that allows you to annotate files.
The basic CRUD REST endpoints are exposed that allow you to create,
edit, delete and list annotations.

Annotations have been hooked up to activities and will generate the
appropriate notifications and emails.