Como criar a relação NHibernate HasManyToMany

Eu sei que existem perguntas sobre HasManyToMany, mas desta vez eu quero colocar alguns campos na tabela do meio, como 'Descrição, Data de Criação'.

Para a minha situação, eu não quero vincular nos dois sentidos. Eu tenho empresa, pessoa e tabelas de endereços. E toda empresa ou pessoa pode ter mais de um endereço. Nesta situação, o que devo fazer? Como devo escrever o código de classes e mapeamentos?

Abaixo você pode ver as tabelas: