cherrypick gnacs and custom_output modules, add geo module to JM branch