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 
Ultimately there's two types of values: raw and encoded. Maybe this should be framed in terms of disabling encoding? Like `alreadyEncoded=true`?

Do many people actually use this behavior?

Another crazy option is to actually introduce a type like `UrlEncodedString` and give it APIs:
```
class UrlEncodedString {
  static UrlEncodedString encode(String s);
  static UrlEncodedString forEncoded(String s);
}
```