initial push of modules, code from AppEngine sync