adding internationalization support, and refactoring class models