move funcs to geom
add spawn
namespace sanity