Add data validation (fixes #6)

This raises an error upon duplicate mentions. It also warns on nested or crossing mentions.

This is somewhat flexible in its handling, but no interface is provided to affect that setting.

Should we ignore crossing mentions by default so that it's silent when processing TAC?