ENYO-1259: Enyo: add tools/deploy.js

- replaces the version previously proposed along with bookplate,  because
  deployment is meant to be done manually (using bootplate or a dupli-
  fork of it) and using the Ares IDE.
- This version uses node-optimist as an option parser.

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1259: Enyo: convert tools/deploy.js from optimist to opts

- This version uses [node-nopt](https://github.com/isaacs/nopt) as an
  option parser, to be consistent with minify.js, although
  [node-optimist](https://github.com/substack/node-optimist) is probably
  a better one.
- Tested when invoked from bookplate

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1259: add node-shelljs UNIX-like Shell in tools/node_modules

- Isolated into a single commit to allow easy revert if needed.
- See [GitHub: shelljs](https://github.com/arturadib/shelljs)

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1259: Enyo tools: move nopt one level up in the tools folder

- Isolated into a single commit to allow easy revert if needed.
- Used by deploy.js in addition to minify.js
- See [GitHub: nopt](https://github.com/isaacs/nopt)

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1259: Enyo deploy.js: add a "--source" parameter

- This is required to run deploy.js from an Ares server (there might be
  several application sourceDir valid at the same time (being built at
  the same time).

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1259: make minify.sj & deploy.js able to run on a server

- apply restriction on Node's child.process.fork() to minify.js &
  deploy.js so that they can be run form the Ares server.

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1279, ENYO-1360: rework sync support in enyo.Ajax and enyo.xhr to work better on IE, add tests for sync handling to suite

Enyo-DCO-1.0-Signed-Off-By: Ben Combee (ben.combee@palm.com)
ENYO-1084: fix repeater sample which had trailing comma making array length wrong on IE8

Enyo-DCO-1.0-Signed-Off-By: Ben Combee (ben.combee@palm.com)
Merge branch 'master' into ENYO-1259
Update enyo.WebService to have timeout property
Update random code in Enyo core that directly uses console.log/.warn to use the enyo shims instead for better IE compatibility
Updated documentation in enyo.setLogLevel to clarify usage

Enyo-DCO-1.0-Signed-Off-By: Ben Combee (ben.combee@palm.com)
Cleaning up API comments
Minor source cleanups

Enyo-DCO-1.1-Signed-Off-By: Ben Combee (ben.combee@palm.com)
ENYO-1402: enyo.Ajax does not correctly manage FormData (Bad Content-Type header)
- Just let XHR2 to set the Content-Type header when the body is a FormData object.

Enyo-DCO-1.0-Signed-off-by: Yves Del Medico <yves.del-medico@hp.com>
Merge pull request #160 from enyojs/ENYO-1259

ENYO-1259: replace deploy.(sh|bat) by node-based deploy.sh

Reviewed-By: Ben Combee (ben.combee@palm.com)
Modify IE XOrigin code to not choose this option when user specified additional headers, since this won't work.

Enyo-DCO-1.1-Signed-Off-By: Ben Combee (ben.combee@palm.com)
Change platform detection code to only detect touch/gesture in IE when msMaxTouchPoints is non-zero

Enyo-DCO-1.1-Signed-Off-By: Ben Combee (ben.combee@palm.com)
Update enyo-selectable and enyo-unselectable styles to use new IE10 CSS attribute, -ms-user-select

Enyo-DCO-1.1-Signed-Off-By: Ben Combee (ben.combee@palm.com)
Mark enyo.Scroller as having touch events handled internally in IE10.  This might need to be moved into a higher-level construct for touch to work right outside of scroller.

Enyo-DCO-1.1-Signed-Off-By: Ben Combee (ben.combee@palm.com)
Merge branch 'master' of github.com:enyojs/enyo into ENYO-1402
Add window size and devicePixelRatio to platform sample output

Enyo-DCO-1.1-Signed-Off-By: Ben Combee (ben.combee@palm.com)