Parameter type fixes

Based on #27 so should be rebased before merging

Tries to fix the errors described in #26. 

[Swagger spec](https://github.com/wordnik/swagger-spec/blob/master/versions/1.2.md#524-parameter-object): "5.2.4 Parameter Object
...This object includes the Data Type Fields in order to describe the type of this parameter. The type field MUST be used to link to other models."

This PR changes a couple of things:
  -  <code>allowMultiple</code> should not be explicitly set, it can be determined from the <code>ParameterModel</code>. <code>true</code> when it's a container type
  -  When <code>ParamaterModel</code> is a container type, <code>Type</code> and <code>Format</code> are taken from DataType's <code>Items.Type</code> and <code>Items.Format</code>. (Note: when <code>allowMultiple==true</code>, items type of <code>ParameterModel</code> is always primitive)
  -  When <code>ParamaterModel</code> is non-primitive, take the <code>Type</code> from <code>Ref</code> and clear <code>Ref</code>