Update SplitView API

- Added method togglePane()
- Changed property hidden -> paneHidden
- Changed property placement -> panePlacement
- WinJS.UI.SplitView.Placement -> WinJS.UI.SplitView.PanePlacement
Fix bug where ToggleSwitch was un-draggable in webkit browsers. Closes #664.
Update SplitView pane background color
Make modules depend on their own styles rather than wrapper file.
Add css testing libaries
Fix a couple of ordering errors
Update splitview and toolbar to rely on their own style files
Remove unnecessary callback API now that tests are synchronous
Fix #253: Hub: Fix scroll position restoration

When using a horizontal Hub, it is best practice to specify all section
widths in CSS for performance reasons.

However, developers may choose to have a section whose width depends on
its content. In this case, the section may change width during
WinJS.UI.processAll (e.g. if the section contains a Repeater). In this
scenario, to reliably restore a scroll position after a navigation, the
developer should wait for the Hub to fire loadingState=complete.

The bug was setting scrollPosition in loadingState=complete didn't work
because the Hub had the sizes of the sections before they were processed
rather than afterwards (so it would clamp the desired scroll position
incorrectly).

The fix is for the Hub to invalidate its measurements before firing
loadingState=complete if a section changed size during processing.
Merge branch 'master' into AmazingJaze/CascadingFlyout

Conflicts:
	src/js/WinJS/Controls/Menu.js
https://github.com/winjs/winjs/issues/682
Closes #682

The fix is to explicitly update our element position when placement is changed. This has been a bug since we added the closedDisplayMode API.
Merge branch 'master' into AmazingJaze/CascadingFlyout