AUI-1173 Implement HTMLScreen

AUI-1173 SF

AUI-1173 Implement title retrieving from the provided content.

AUI-1173 SF

AUI-1173 Update template

Yogi loader regenerate

AUI-1173 Add pjax header

AUI-1173 SF

AUI-1173 SF

AUI-1173 If there's an outstanding request, abort it
AUI-1173 Upgrade surface app router to support querystrings on YUI 3.15+
AUI-1206 Promises API

AUI-1206 Tests

AUI-1206 Remove comments
AUI-1206 Do not invoke onRejected callback when not specified to avoid TypeError
AUI-1173 Remove unecessary type checking for cache
AUI-1173 Allow navigation to be cancelled

AUI-1173 Update demos

Yogi loader regenerate

AUI-1173 SF
AUI-1173 Add ParseContent plugin to Surface

Conflicts:
	src/aui-surface/meta/aui-surface.json
AUI-1173 Avoid breaking on missing surfaces

AUI-1173 Fix syntax error

Yogi loader regenerate
AUI-1215 Add preserve option to parse content to not extract scripts from fragments

AUI-1173 Use preseve option of parse content

AUI-1215 Sterialize preserved script nodes in order to avoid double execution
AUI-1173 Add cache for getSurfacesContent
AUI-1173 Avoid repaint if the child is already in place
AUI-1173 getSurfaceContent should not be deffered, getSurfacesContent is now the deferred point for loading screen content for surfaces

AUI-1173 Remove console.log
AUI-1173 Remove children history management from surfaces sinde screens cache the content already
AUI-1173 Aborts any outstanding request on load content promise cancellation

AUI-1173 SF
AUI-1173 Force redirect on error

AUI-1173 SF
AUI-1173 Prevent missing reference when removing activeChild

AUI-1173 Remove unecessary code
AUI-1173 Add ability to determine the request method of HTMLScreen
AUI-1215 Rename preserve option to preserveScriptNodes
AUI-1173 Do not try to append content if the element does not exist

Conflicts:
	src/aui-surface/js/aui-surface-base.js

AUI-1173 Source formatting

grunt format
AUI-1173 Removes dependency of Y.Router and Y.PJax

YUI's Router and PJax lifecycle doesn't support deferred phases out of the box which compromises SurfaceApp's lifecycle, besides Y.Router doesn't support querystring routing.
Instead of undo many Y.Router behavior, I am tighing up the contract of SurfaceApp implementing its functionality, so then we have more control.