base shape constructor and spheres