bug(html5 navigation): broken in Opera

http://my.opera.com/community/forums/topic.dml?id=1185462

Closes# 938
bug(ie8 docs): docs now work on ie8
doc($rootScope): fix $digest example
fix($browser/$location): single quote in url causes infinite digest in FF

The real issue is in FF, see https://bugzilla.mozilla.org/show_bug.cgi?id=407172.

FF overly encodes stuff which breaks our expectations and then we fail .url() != currentUrl.absUrl()
comparison unexpectidly, which leads to infinite digest.

The workaround is to correct for this inconsistency in $browser and decode any single quotes in urls.

Closes #920
fix($location): support urls with any protocol

The url used for location parsing was quite strict and did not support
custom url schemes like "chrome-extension://". With this change the only
requirement for scheme is that it doesn't contain ":" character.
fix($sniffer): report history false on Android < 4

Android has history.pushState, but it does not update the location correctly:
http://code.google.com/p/android/issues/detail?id=17471

Closes #904
fix(angular-mocks): memory leak in jasmine's DI utils

When using inject/module helper methods in tests, these methods would
leave the injector laying around after the test. Since injector is
the application it can grow very large.
fix(jqLite): .data()/.bind() memory leak

Since angular attaches scope/injector/controller
into DOM it should clean up after itself. No need
to complain about memory leaks, since they can
only happened on detached DOM. Detached DOM would
only be in tests, since in production the DOM
would be attached to render tree and removal
would automatically clear memory.
docs(changelog): release notes for 1.0.0rc9 eggplant-teleportation
chore(release): cutting 1.0.0rc9 eggplant-teleportation
chore(release): start 1.0.0rc10 tesseract-giftwrapping iteration
fix(jqLite): have same expando format as jQuery
refactor(scope.$emit): rename event.cancel() to event.stopPropagation()

Breaks event.cancel() is event.stopPropagation()
feat(scope): add event.preventDefault() and event.defaultPrevented
fix(ngRepeat): expose $first, $middle and $last instead of $position

$position marker doesn't work well in cases when we have just one item
in the list because then the item is both the first and last. To solve
this properly we need to expose individual $first and $middle and $last
flags.

BREAKING CHANGE: $position is not exposed in repeater scopes any more

To update, search for $position and replace it with one of $first,
$middle or $last.

Closes #912
docs($filter): minor corrections
feat($timeout): add $timeout service that supersedes $defer

$timeout has a better name ($defer got often confused with something related to $q) and
is actually promise based with cancelation support.

With this commit the $defer service is deprecated and will be removed before 1.0.

Closes #704, #532
chore(package.json): add simple package.json with npm dependencies
fix($rootScope): TTL exception does not clear $$phase

When $digest() throws infinite digest exception it
does not properly clear the $phase leaving the scope
in an inconsistent state.

Closes #979
docs(changelog): release notes for 1.0.0rc10 tesseract-giftwrapping