Add loopback:swagger generator

/to @bajtos @ritch @altsang 

The PR adds a new sub-generator to loopback to generate models and skeleton remote methods from swagger specs (v1.2 and 2.0).

- Asks for a url or path to the swagger spec json document
- Loads/parses the swagger spec. 
- Builds a list of models and js files that contain the skeleton remote methods.
-  Checks the existence of models to mark if a model needs to be overwritten and prompts the user to select models using the checkbox
- Prompts the users to select a data source for the models from the list of configured data sources
- Calls workspace apis to generate model defs, configs, and js files

Issues found for workspace:
- https://github.com/strongloop/loopback-workspace/pull/131  
- There is no way to reference a model from common/models from a js file under server/models
Is this depending on the fact that `self.modelDefs` items are ordered in the same way as `self.apis`? That is IMO way too brittle.

Please modify `self.apis` and/or `self.modelDefs` to contain a link to the other object. I.e. the result should be

```js
      async.eachSeries(apis, function (api, fn) {
        var modelDef = api.modelDef;
```