Help page null checks for ApiParameterDescription.ParameterDescriptor properties (fixes #1484)
- https://aspnetwebstack.codeplex.com/workitem/1484
- "[HelpPage]Null ref exception when using UriPathExtensionMapping"
- Problem is more general than reported issue: NREs occur when loading help
pages whenever routes contain undeclared (i.e. unused) parameters.
- nit: Add Contract.Assert() when creating ApiParameterDescription for
declared parameters.

Known issues with optional unused parameters (aka "undeclared" though they're
declared in the route template -- just not in the action method) and those with
default values in the route configuration: These parameters will not be
included in the route template strings (eliminated deep in HttpParsedRoute.Bind())
or the URI parameter table (skipped in ApiExplorer.AddUndeclaredRouteParameters()).
These corner cases can't be fixed without breaking changes.

(cherry picked from commit 03162ad2c288ef35d7289ea7a3417380fe3f196e)