Definitions without resource names

* `ParameterChoice` generates a name with it's resource name
* `Parameter` is given the resource name only if it exists
* `Parameter` will not use nil resource names
Ugh, that's pretty ugly.  These names are going to leak into generated
API documentation.