add basic point implementation