Add support for binary response bodies

Be more selective about which giveResponse method we use, based on the
presence and type of the body content. If the response body supplied is
a byte array or input stream, use rest-driver's giveResponseAsBytes.