Encode headers and params

BaseClient currently fails when non-ascii characters are passed in
paramas and headers. This patch ensures those params are correctly
encoded before the request is made.

The patch adds strutils from oslo and updates gettextutils.

Fixes bug: #1182824

Change-Id: I813d745d76700c77f1871b151a76ff8b72ea92d4
Merge "Encode headers and params"