perf(infiniteScroll): Use isolate scope

- Change to use isolate scope with & binding
Allow to add custom CSS class to popup
[Bug] Default value overwrites the option's value.
Added unit test
feat(items): better item remove animations
amend(tabs): prevent footer from having tabs top and re-add $tabs-striped-off-opacity
test(header): has-tabs-top test accounts for footer
chore(bower): angular-ui-router 0.2.13
fix(scroll): ion-scroll swallows scroll events by default. Fixes #2695
Merge pull request #2390 from wesleycho/perf-infinite-scroll

perf(infiniteScroll): Use isolate scope
feat($ionicView.unloaded): emit when view unloaded
refactor(delegateService): expose ionic.DelegateService

This change makes the DelegateService available on the ionic namespace.
It is useful so external directives can follow the delegate pattern set
by the framework itself.
chore(): update-angular.sh
Merge branch 'master' of https://github.com/zz911/ionic into zz911-master
Merge branch 'zz911-master'
fix(popover): default values overwrites options
Merge branch 'master' of https://github.com/alextrs/ionic into alextrs-master
Merge branch 'alextrs-master'
feat(popup): cssClass option
feat(actionsheet): cssClass option