add support for hash and array parameter special handling

## As a USER, I can create hashes and arrays that are sent in requests as JSON objects and arrays, respectively

### Acceptance Criteria
1. User can specify `hash` or `array` as parameter types.
 - If `hash` is a type, sub-parameters are expected in the definition of the object.
1. When a variable has type `array`, the UI allows the user to add as many fields as they'd like.
1. When a variable has type `hash` or `object`, the UI creates input boxes for each sub-parameter.

### Tasks
- None

### Additional Notes
- None