Adding agnostic internationalization functionality

This is a modification of pull request "add internationalisation code base and support for french language" I was able to make good use of most of elprincipe's code, I simply modified it to accept additional languages (not only french). Please see the INTERNATIONALIZATION_README.txt to see how things work.