Support base64 encoding of bytes input for JSON blob types.

This pull request modifies the code added in ffcef5f to also support
arguments passed in as bytes, such as those you might encounter when
using KMS.

See this related issue: boto/boto3#31

Since the JSON data for serialization tests doesn't support specifying
bytes as input, I've added a new test class to cover this case.
Refactor base64 encoding for serializers.

This refactors the base64-encoding into a common method shared by
all serializers. The serializers now get the value using this new
method and just need to set it somewhere in the params.
Merge pull request #397 from danielgtaylor/json-bytes-blob

Support base64 encoding of bytes input for JSON blob types.