coding style fix
splitted into modules
i18n implemented