ENYO-1189: add '/token' to the Hermes PhonegapBuild service

- Retrieve the developer's token based on his credentials (username,
  password) provided in the request body as application/x-www-urlencoded.

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: test project: add phonegap builder base parameters

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: LocalStorage, allow caller to bind its context on the callbacks

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: ServiceRegistry: support 'build' services in addition to 'filesystem'

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: FileSystemService: add propfind() entry point

- replacing listFiles() seems too invasive, so adding a new entry point
  as listFiles should have been.

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: Refactor ProjectConfig & disconnect from PropjectProperties

- Re-implement ProjectConfig frm scratch
- Stub functions using the previous model
- Needs ProjectProperties (UI) to be re-adapted to the new implementation

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: Adapt Phonegapbuild to the new ProjectProperties

- Does not work (yet) as enyo.Ajax does not submit a FormaData (yet):
  MIME boundary is missing.

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
Merge remote-tracking branch 'enyojs/master' into ENYO-1189
ENYO-1189: After code review with Marian

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: Add project.json formal JSON schema

- Added for testability

Enyo-DCO-1.0-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: Add a [Details…] button to the generic Ares.ErrorPopup

- The button (and associated Drawer) are shown only if the details
  property is not falsy.

Enyo-DCO-1.1-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: fix jshint complaints

Enyo-DCO-1.1-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: shorten default fsLocal filesystem pathname

Enyo-DCO-1.1-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: fully report deployment errors to the developer

- use new enyo.Ajax#xhrResponse.{status|headers|body}
- enrich the default Ares ErrorPopup with optional [Details…] button

Enyo-DCO-1.1-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
Merge remote-tracking branch 'enyojs/master' into ENYO-1189
ENYO-1189: address review comments & fix jshint complaints

Enyo-DCO-1.1-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1195: Auto-completion: should depend on Indexer.search(filterFn, mapFn) instead of Indexer.objects internal data.
- Removed internal getFunctionList() and getKindList() functions.
- Switched to the more generic Indexer.search() method

Enyo-DCO-1.1-Signed-off-by: Yves Del Medico <yves.del-medico@hp.com>
ENYO-1189: FileSystem fix wrong depth passed to PROPFIND

Enyo-DCO-1.1-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: PhoneGap Build: Use a pre-request temporary directory

Enyo-DCO-1.1-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>
ENYO-1189: start adding JSDoc comments to the FileSystemService interface

Enyo-DCO-1.1-Signed-off-by: Francois-Xavier KOWALSKI <francois-xavier.kowalski@hp.com>