Requirejs

Define all modules as AMD definitions. Also add Docs as test environment for this changes.

Details:
1. Add bower modules for all dependencies required for XF, no more direct load from xframework.org.
2. Add Docs (manually fetched from docs.xframework.org with all error and merge conflicts).
3. Modify all files from xf folder to be Requirejs definitions, this will allow to test files independently and to manage file decencies flexible).
4. Modify Docs to use xf from sources, loading all modules using requirejs.
5. Change build script to process Requirejs modules and build from them one file. Implementation copied-pasted-modified from https://github.com/jquery/jquery/blob/master/build/tasks/build.js.
6. XF builded and tested using new environment.
7. Few actual changes in XF code:
   a) rootDOMObject duplicated in xf.pages.js, because xf.pages depends on this variable.
   b) ComponentStatus moved to xf.core.js, because it is only used in this place.
   c) loadChildComponents changed to XF.loadChildComponents, because local function isn't available.
   d) src/xf.ui.js moved to ui/xf.ui.core.js
   e) fix ridiculous bug with _.each(XF.ui.enhanced.length, function (elem, index) in xf.ui.core.js
   f) fix ridiculous bug with markup in xf.ui.slidemenu.js.
8. Some pieces of code in xf.js was rearranged according decencies. Actual size was increased by 265 bytes, size of xf.min.js was decreased by 9 bytes.