fix(ngSwitch): use the correct transclusion scope

If an ngSwitchWhen or ngSwitchDefault directive is on an element that also
contains a transclusion directive (such as ngRepeat) the new scope should
be the one provided by the bound transclusion function.

Previously we were incorrectly creating a simple child of the main ngSwitch
scope.

Closes #8235
keep `{{foo}}` - simplify the rest.