The uses for all of the keyword arguments is uncertain to me.  Maybe this is a way to add i18n and support multiple languages?  In that case a translation file would probably be better.