refactored codes
modify locales
add some languages