Use the annotations directly for parameter handling.

Before we attempted to normalize the parameter annotations into a name and type model. The introduction of multi-part transfer encodings required something more expressive so the annotation instances themselves were used. This change removes the name and type in favor of using the annotation for everything.

Deprecate the pre-encoded annotations in favor of boolean fields on the corresponding 'regular' annotation.

@swankjesse 
> If I say `encoded=true` does that mean "please encode this value for me?" or "I already encoded this value" ?

Well it's `encode=true` which I think has better semantics since it's a description of the action rather than referencing it in past tense.

> Another crazy option is to actually introduce a type like `UrlEncodedString` and give it APIs:

Since I'm just trying to push out a 1.7.0 to start work on v2 I don't want to go crazy will stuff like this now. We can talk about it for v2 though!