feat($compile/ngBind): don't add binding info if not enabled

The compiler and ngBind directives add binding information (`ng-binding`
CSS class and `$binding` data object) to elements when they are bound to
the scope. This is only to aid testing and debugging for tools such as
Protractor and Batarang. In production this is unneccesary and add a
performance penalty.

This change disables adding this binding information by default. You can
enable it by calling `$compilerProvider.enableBindingInfo()` in a module
`config()` block.

BREAKING CHANGE:

The `ng-binding` CSS class and the `$binding` data object are no longer
attached to DOM elements that have a binding to the scope, by default.
If you relied on this feature then you can re-enable it in one of your
application modules:

```
someModule.config(['$compileProvider', function($compileProvider) {
  $compileProvider.enableBindingInfo();
}]);
```
docs(protractorTests): inject a mock module to enable bindingInfo during e2e tests
style(ngBind): remove outdated comment
feat($compile/ngBind): don't add binding info if not enabled

The compiler and ngBind directives add binding information (`ng-binding`
CSS class and `$binding` data object) to elements when they are bound to
the scope. This is only to aid testing and debugging for tools such as
Protractor and Batarang. In production this is unneccesary and add a
performance penalty.

This change disables adding this binding information by default. You can
enable it by calling `$compilerProvider.enableBindingInfo()` in a module
`config()` block.

BREAKING CHANGE:

The `ng-binding` CSS class and the `$binding` data object are no longer
attached to DOM elements that have a binding to the scope, by default.
If you relied on this feature then you can re-enable it in one of your
application modules:

```
someModule.config(['$compileProvider', function($compileProvider) {
  $compileProvider.enableBindingInfo();
}]);
```
feat($compile/ngBind): don't add binding info if not enabled

The compiler and ngBind directives add binding information (`ng-binding`
CSS class and `$binding` data object) to elements when they are bound to
the scope. This is only to aid testing and debugging for tools such as
Protractor and Batarang. In production this is unneccesary and add a
performance penalty.

This change disables adding this binding information by default. You can
enable it by calling `$compilerProvider.enableBindingInfo()` in a module
`config()` block.

BREAKING CHANGE:

The `ng-binding` CSS class and the `$binding` data object are no longer
attached to DOM elements that have a binding to the scope, by default.
If you relied on this feature then you can re-enable it in one of your
application modules:

```
someModule.config(['$compileProvider', function($compileProvider) {
  $compileProvider.enableBindingInfo();
}]);
```
fix(ngScenario): bindings are always arrays now
refact($compile): `addBindingInfo` only stores interpolation expressions

We were storing the whole `interpolationFn` in the `$binding` data on
elements but this function was bringing a lot of closure variables with it
and so was consuming unwanted amounts of memory.

Now we are only storing the parsed interpolation expressions from the
binding (i.e. the values of `interpolationFn.expressions`).
refact($compileProvider): rename enableDebugInfo related functions
refact($compile): only add scope info if debugInfo is enabled