Fixed #10190 -- make charset in HttpResponse customizable

``HttpResponse``s charset property depends on the response instantiation
``charset`` argument. If not present, it'll fallback to extraction from
``content_type`` instantiation argument. If that isn't possible, the
``DEFAULT_CHARSET`` setting will be used.

Huge thanks to @charettes, @aagustin and especially to @timgraham for their
reviews and contributions.