Batch commit of a bunch of fixes that were tracked in a separate repo:

- Fixed a bug when a data type is 'Set', the generated client model
  isn't including the required import statement.
- Map all enums to Strings in MyCodegen.scala.
- Preserve inheritance through "extends", ensuring that properties from
  base class are not duplicated.
- Generate Jackson polymorphism-related annotations.
- Fix Map handling.
- Ensure 'type' attribute is not included twice in JSON for
  polymorphic types.
- Generate Java enums for types in API schema that have enum attribute.
- Generate Api class name using entire resource path, not just first
  element.
- Generate Java enums for *parameters* in API schema that have enum
  attribute.
- Add option to disable SSL server certificate validation.
- Auto-generate Jackson annotations for polymorphic deserialization.