Make responses smart, automatically handling type.

Add Marshal field to ContentType that is used for parsing responses.

Add DefaultContentType function that returns the default content type.

Change ContentTypeSupported to RequestContentType that returns the
content type for a request.

Slash handler doesn't trim slash if the path is /, which caused issues
for the router.

Implement the response mechanism that handles response content types
automatically.