content views - extend the definition.repos to support composite definitions

Minor change to extend the definition.repos call to support returning
all repos contained within the definition (i.e. all repos across
all component views).
content views - do not list composite definitions in content list

When a user either creates a composite definition or lists the
content for a composite definition, they should only see the
list of 'non composite' definitions and their associated views.
This commit addresses the issue where we previously listed all
definitions regardless of type.
content views - initial support to promote composite views

This commit contains initial changes to allow a user to
promote a content view that is derived from a composite
view definition.

Note: this code assumes that the component views have
already been promoted to the next environment.  A future
commit will simplify this for the user.
content views - ui - composite definitions - help user resolve content conflicts

When a composite definition is created, the user is not
allowed to select component views where the same repo
may exist multiple times in the definition.  This also applies
when editing.

The issue that arises is that after the definition is
created, there is nothing to stop a user from going in to
change one of the components (e.g. add a repo) which causes
a conflict (i.e. definition now has component views w/ overlapping
repos).

In order to address this, this commit will disable the 'save'
button on the Content screen for the composite definition, highlight
in red the views that have a conflict and provide a tipsy informing
them to unselect views to resolve the conflict. Once the conflicts
are addressed, the user may then save the updated definition,
publish views, refresh views...etc.
content views - fix few bugs in view publish/refresh/promote

Found a few minor bugs when testing composite and non-composite
views.
content views - fix a few broken tests
content views - promote - minor change to handle when there is no definition

It is possible for promotion to occur on a content view that
does not have a definition.  This is essentially the case
for any 'default view' that is associated with a kt_environment.

This commit addresses that case.
content views - tests - few minor changes for composite definitions
content views - address PR 1641 comments
Merge remote-tracking branch 'upstream/master' into fork_composite_views

Conflicts:
	src/app/stylesheets/sections/contents.scss
Merge pull request #1641 from bbuckingham/fork_composite_views

content views - several changes to support composite views