Add i18n middleware, fixes #750