Don't merge--issue #4689:Game controller support

API design of Game controller:https://docs.google.com/a/cocos2d-x.org/document/d/1Jf_j9mvYqIXZbXLZyvPT8ZkuAdUwm2U0WB_GZPlhTt4/edit
The vendor name of controller possibly empty，it will assignment new value when invoke 'Controller::getVendorName'.