Feature/pass options to request

/to @ritch @bajtos 

The PR allows defaults/options to be configured and passed to underlying request module.

For example,

## connector level
```json
{
"connector": "rest",
"defaults": {
  "headers": {
    "accept": "application/json",
    "content-type": "application/json"
  },
  "strictSSL": false,
  }
}
```

## operation level:
```js
{
  connector: 'rest',
  operations: [
    {
      template: {
        "method": "GET",
        "url": "http://maps.googleapis.com/maps/api/geocode/{format=json}",
        "query": {
          "address": "{street},{city},{zipcode}",
          "sensor": "{sensor=false}"
        },
        "options": {
          "strictSSL": true,
          "useQuerystring": true
        },
        "responsePath": "$.results[0].geometry.location"
      },
      functions: {
        "geocode": ["street", "city", "zipcode"]
      }
    }

You may want to consider the following assertion. It will print the response body when the test fails, therefore there will be no need to keep commented-out `console.log` statement.

```
expect(body).to.have.property('id', 1);
```