Fixes #5654 - Permissions for env promotion/remove

This commit contains code to handle environment promotion and deletion.
Basic Rules
 To Promote/Remove you need
    1) promote_or_remove_content_views from content views
    2) promote_or_remove_content_views_to_environment from lifecycle environments.

    Note: Remove of a content view is slightly different from "destroy".
    Remove implies removal of content view versions which could entail
    removal from environments.