¿Cómo puedo asignar eventos de clic a elementos en varias capas?

Tengo varios elementos SVG que están en grupos separados. Se superponen entre sí. Ejemplo:

<svg id="board" width="100%" height="80%">
   <g id="terrain" class="layer">
     <path d="M-32,-32L32,-32 32,32 -32,32Z" transform="translate(0, 0)" class="mote terrain hill"></path>
   </g>
   <g id="guy" class="layer">
     <path d="M-21...Z" transform="translate(192, 448)" class="mote guy"></path>
   </g>
</svg>

Cuando se hace clic en una posición x, y que coincida con ambas, quiero saber en qué se hizo clic. Si vinculo cada uno al evento 'clic', solo se llamarán los controladores de eventos para uno en la parte superior. Lo cual es razonable, aunque no es lo que quiero aquí.

Estoy pensando en crear una capa superior y tener que capturar todos los clics, luego averiguar qué elementos en las otras capas deben notificarse. Eso es mucho seguimiento que me gustaría evitar, si es posible. ¿Hay enfoques más simples para esto?