Better support Options and containers

Changes to address Issue #751 (https://github.com/swagger-api/swagger-core/issues/751).

For an Option or a supported container (i.e., List, Set, Array), use the dataType property in the ApiModelProperty annotation as a hint of the boxed type that is lost to erasure.

Example annotation format:
@(ApiModelProperty @field)(value = "Integers in a Sequence Box", dataType = "List[int]") intSeq: Seq[Int],
@(ApiModelProperty @field)(value = "Integer in an Option Box", dataType = "int") intOpt: Option[Int],