Enabled the navbuttons on IE, enabled the corresponding unit tests for them and added more.
Fix #278: Polyfill for msZoomTo

Update the zoomTo polyfill to do an animated scroll instead of just
setting the scroll position. The implementation works by repeatedly
updating the scroll position using requestAnimationFrame.

The _setActive polyfill also had to be updated. Behind the scenes,
_setActive calls .focus() which causes a scroll. When using _zoomTo and
_setActive together, _setActive caused a jarring jump prior to the
_zoomTo's smooth animated scroll. This was fixed by giving _setActive the
ability to hold one scroller steady for use in this scenario. A number of
_setActive helpers had to be updated to pass around the scroller that
should be held steady.

Hub and NavBar were updated to ensure that their viewports don't scroll
when calling _setActive. They're the only controls that use zoomTo.
Fix CorsicaTests.TabManager.testGetTabIndex in WWA

Avoid triggering a safe HTML exception by using setInnerHTMLUnsafe.
Fix #136: Fix focus issues in tests

NavBarContainer had to be given an explicit tabIndex of -1 otherwise it
wouldn't be able to receive focus in most browsers.

Many of the tests checked that the NavBarContainer received focus
immediately after calling .focus on it. This was removed beacuse:
  - It was unnecessary. NavBarContainer only had focus temporarily. Focus
    quickly moved to a command within the NavBar. Each test already
    verified that the command received focus a little later so this check
    was redundant.
  - The assertions were flaky and failed in some browsers.
Fix #136: Fix setting of focus when NavBar appears

When the NavBar is shown, focus was being set onbeforeshow. At this time,
the NavBar's visibility is hidden and some browsers do not allow hidden
elements to receive focus. This was fixed by setting focus onaftershow.
Fix #136: NavBar: Fix resize tests

Tests were failing in browsers that don't support mselementresize.

Developers who resize a NavBar element should call forceLayout on it so
the resize is detected in browsers which do not support mselementresize.

NavBar also resizes when the window is resized in all browsers.

So the resize tests were updated as follows:
  - If the browser supports mselementresize, we do nothing other than
    resize the element. Otherwise, we fire a window resize event.
  - Each resize test was duplicated to call forceLayout after changing the
    element's size. These tests run in all browsers. They test the scenario
    that the developer wants to change the size of the NavBar without
    changing the size of the window.
Fix #136: NavBar: Fix high contrast and URL tests

The high contrast tests were failing in some browsers because not all
browsers support msHighContrastAdjust. This was fixed by only asserting
against this attribute in browsers that support it.

Assertions against CSS URLs were failing in some browsers because the
browsers normalize the URLs differently. This was fixed by doing the
assertions against normalized URLs.
Fix #136: NavBar: Fix detection of losing focus

When an element loses focus and no element receives focus, browsers set
document.activeElement to different values. Some browsers set it to null
while others set it to document.body.
Fix #136: NavBar: Add dispose check to scroll handler
Updated nav button styles according to designer redlines.
Abstracting AppBar Layout implementations into new _Layouts file.
"custom" layout AppBar uses private _AppBarBaseLayout class.
"commands" layout AppBar uses  private _AppBarCommandsLayout class, which is derived from _AppBarBaseLayout.

Added new AppBar unit tests and fixed 2 Failing Menu/MenuCommand tests in WWA
Merge branch 'master' into AmazingJaze/closedDisplayModes

Conflicts:
	src/js/WinJS/Controls/AppBar.js
	src/js/WinJS/Controls/AppBar/_Layouts.js
	tests/AppBarAndFlyouts/AppBar.js
fix merge errors