Added i18n file, some cleanups and generalizations.