set LANGAUGE as well as LANG

LANG variable sets the locale and LANGUAGE variable sets the fallback
language in case a program does not have translations available for
the default locale. It is also used by the gettext program.

LANGUAGE is being set only on ubuntu and debian not on redhat

For docs see:
* https://help.ubuntu.com/community/Locale/
* https://help.ubuntu.com/community/EnvironmentVariables
* http://www.gnu.org/savannah-checkouts/gnu/gettext/manual/html_node/The-LANGUAGE-variable.html#The-LANGUAGE-variable
* http://serverfault.com/questions/455718/for-setting-locale-in-ubuntu-what-does-the-language-environment-variable-mean
* http://serverfault.com/questions/455922/in-ubuntu-what-is-the-difference-between-en-usutf8-and-en-us-when-setting-lan
Added support to change LC_ALL setting.
source locale into session after setting it