[NODEJS-1598] PoC of acs-node-sdk Rework

## Ticket Information
***JIRA Ticket***
https://jira.appcelerator.org/browse/NODEJS-1598

***Description***
This PR is about to raise a PoC of ACS Node SDK rework. It re-designs framework of acs-node-sdk, and supports multiple instances. It also provides a way to list all available ACS objects and methods including doc url for a good reference. Test framework with travis-ci is added too for a good and automatic test.

Since this is only a PoC, I only implemented ACS object "Users". If this way is towards to a good direction and passes code review, we will add all other ACS objects later.

## Get started
Please refer to readme file https://github.com/realpaul/acs-node-sdk/blob/NODEJS-1598_ReworkPoC/README.md for a general usage.
make sure you name all functions so that in a stack trace, you actually get the name of the function vs. (anonymous function).

for this line, you could re-write:

```
var ACSApp = function ACSApp(arg1, arg2)
```

however, you should just simply and don't assign to a variable:

```function ACSApp(arg1, arg2)``

Also, give them descriptive names.  If you have dynamic arguments, I would do this:

```
function ACSApp (key, options) {
   // if the user only passes in an object as first parameter
   if (typeof key === 'object') {
       options = key;
       key = null;
   }
}
```

this makes it much clearer that you're supporting different types of arguments dynamically in function.

You can also check for `arguments.length` to get the number of arguments passed into the function.