Track bodies as they move around.
Made most templates take a BASE_TYPE for quite swap between int and double