Cómo crear una relación NHibernate HasManyToMany

Sé que hay preguntas sobre HasManyToMany, pero esta vez quiero poner un par de campos en la tabla intermedia como 'Descripción, Fecha de Creación'.

Para mi situación no quiero ligar de dos maneras. Tengo tablas de empresa, persona y dirección. Y cada compañía o persona puede tener más de 1 dirección. En esta situación, ¿qué debo hacer? ¿Cómo debo escribir el código de clases y asignaciones?

A continuación puedes ver las tablas:

Respuestas a la pregunta(1)

Su respuesta a la pregunta