added language support, refactored saving, updated ui, other fixes