fix(view): prevent flicker
amend(collectionRepeat): remove accidental revert
chore(gulp): allow --browsers flag to work on all karma tasks
refactor(delegateService): make more DRY, increase perf
refactor(backButton): separate show/hide logic
fix(navButtons): correct show/hide
fix(tabs): wrap inline tab content

Closes #2637
fix(collectionRepeat): rerender after resize/enter

Previously on every `beforeEnter`, collection-repeats within a
ion-nav-view would rerender. However, this is only necessary when the
window resizes. The rerender already works when the collection-repeat
is within the active view because the scroll view has accurate
dimensions. But when the collection-repeat is within a cached view it
does not have dimensions, causing the rerender to incorrectly place its
items. This update will only rerender the collection-repeat if there
was a window resize, and the scroll view which the collection-repeat
was in, did not have dimensions at the time of the resize. If/when the
view becomes the active view again, the collection-repeat will rerender
on `afterEnter` when the scroll view has accurate dimensions.
refactor(slideBox): properly use size of parent, perf increase
chore(tab): do not add .pane to ion-nav-view tab
style(slidebox): make sure next/prev slides are at top
fix(popup): add animation keyframes
fix(view): digest view scope before transition
style(slideBox): cleanup unused vars
fix(menuClose): expire nextViewOptions
fix(scrollView): fix null pointer exception on scrollbar
fix(collectionRepeat): parse collection-item-height/width to int

Closes #2633.
amend(slideBox): when changing by >=2 slides, transition correctly
style(slideBox): add cursor:pointer to slider pager buttons
refactor(slideBox): store/retrieve slide content scope in a more robust manner