fix for https://bugs.launchpad.net/opencontrail/+bug/1297579

1. If the auth token is not specified, call to fetch auth token from keystone (_authenticate()) is done in try catch. In case of exception, give an error message “unable to authenticate”
2. If auth token is specified, and authentication fails, no attempt should be made to fetch token again. Instead return error.
3. Authentication protocol is made configurable(key stone access may be secured(https) or unsecured(http))