use grunt to build
update i18n.printf, i18n.setDictionary is now i18n.load