AUI-1173 Remove unecessary logical branches and dead methods
AUI-1173 Adding surface tests
AUI-1173 In order to keep the history scrolling fluid, the scroll position needs to be locked until content is fully loaded and surfaces painted

The problem is that behavior is incosistent through browsers. Blink and Webkit popstate event happens before scroll position updates, and on Firefox and IE scroll position updates before popstate event. If we assume the lock position is the same as the current win.page[XY]Offset on popstate, we should capture the next scroll tick, otherwise listens for the next scroll once to capture the history scroll position. For more information see discussion https://bugzilla.mozilla.org/show_bug.cgi?id=679458.
AUI-1173 Disable tests on browsers that don't support HTML5 History and increase some timeouts in order to work-around the asynchronous scrollTo behavior
AUI-1173 Yogi loader regenerate

Conflicts:
	src/aui-base/js/aui-loader.js
AUI-1173 Should not navigate when already at destination from link clicks and app.navigate call
AUI-1173 Adding more surface tests
AUI-1173 Make surface tests to pass on phantomjs
AUI-1173 Improve surface test exposing start/endNavigate as function properties in order to re-use the same bind event
AUI-1173 HTMLScreen tests should wait endNavigate event in order to assert values due to io delay
AUI-1173 Source formatting
AUI-1173 Tests should avoid accessing protected surface properties
AUI-1173 Add failNavigate, successNavigate events and change navigate method to return the pending request promise instead of boolean
AUI-1173 Update surface tests
AUI-1173 Simplify surface app lifecycle and add refresh feature
AUI-1173 Update surface demo
AUI-1173 Simplify surface tests
AUI-1173 Do native navigate when clicked in links without route
AUI-1173  When reloading the same path do replaceState instead of pushState to avoid polluting history with states with the same path
AUI-1173 Add support to navigate to path with hash