fix(sanitize): match URI schemes case-insensitively

According to RFC 3986 (http://tools.ietf.org/html/rfc3986#section-3.1)
schemes such as http or mailto are case-insensitive. So links such as
http://server/ and HTTP://server/ are valid and equivalent.

Closes #3210
feat(Angular.js): skip JSON.stringify for undefined

Return early in `angular.toJson` if the object to be stringified is `undefined`.
IE8 stringifies `undefined` to `'undefined'` whereas other browsers return
`undefined`. This normalizes behavior and passes currently broken unit tests
in IE8.
fix(angular.equals): add support for regular expressions

Regular expression objects didn't used to be considered to be equal when using
'angular.equals'. Dirty checking therefore failed to recognize a
property modification.

Closes #2685

Conflicts:

	test/AngularSpec.js
style(ngMock): add missing whitespace
docs(di): promote registering controllers on modules
chore(ngdocs): remove autofocus for the filtering search
chore(gitignore): add libpeerconnection.log

Google chrome (when tested using karma) spits out a log file called libpeerconnection.log
test(utils): Adds a missing test for snake_case
docs(dateFilter): fix typos

Fix closing parenthesis, quotes around string literal and remove
trailing whitespace.

Closes #3250
docs($templateCache): add examples of usage
chore(ngdocs): fix improve button overlap
docs(jqLite): document "$destroy" event
docs($window): improve style and clarify wording
docs(ngController): remove obsolete mention of scope as `this` in controller

Controllers are now (since angular 1.0) instantiated as regular constructorsand the scope
is injectable as $scope rather than being referenced as `this` in controller methods.
docs(input): fix example

The input [number] error spans did not show on the example, as they were
relying on an non-existing property (myForm.list.$error) vs the working
property (myForm.input.$error)
fix($compile): always instantiate controllers in parent->child order

Previously it was possible to get into a situation where child controller
was being instantiated before parent which resulted in an error.

Closes #2738
chore(dump): remove dead code

This code is not being used any more and the test is now failing
due to Karma changes. Karma used to expose window.dump but that
changed recently and that's why our build is now failing.

I'm removing the code and test, but we still need to figure out
how to route window.dump through angular.mock.dump, but that will
have to be a separate commit.
docs(index): add seed app link to menu item
docs(cacheFactory): correct typos
docs(bootstrap): Note that ngScenario requires ngApp

ngScenario expects an ngApp directive to be used, and doesn't work for
manually bootstrapped apps. The failure mode is to hang on navigation.

Trying to make this wont-fix bug less obscure by documenting it.
Eventually Protractor will replace ngScenario and fix this.