Add KEYSTONE_LOCALEDIR env variable

Part of fixing bug #995287

Syncs these two commits from oslo-incubator:

  Support overriding oslo localedir too
  Add a gettextutils.install() helper function

to get a new gettextutils.install() function which allows the default
localedir to be overwritten via an environment variable.

A few things to note:

 - the gettext.install() call is moved from common.config to the
   toplevel scripts to fix cases (e.g. the legacy auth_token middleware)
   where keystone code might be imported by a program who's default
   translation domain is not 'keystone'.

 - we add a gettext.install() call in keystone.test so that tests have
   the _() builtin installed.

Change-Id: I86562b3a65d371673bb21f7179eecc7602bc0775