Add OpenMP annotations on pairwise distance example.

The speedup is not great due to conversion cost.
A few corner cases around empty_sets and empty dicts.

Concerning their bool conversion, or to-python conversion...
Handle intrinsic return aliasing properly.

Trickier than I thought, because the returned value (may) aliases to
some of the method parameters.

As a consequence introduce a return_alias attribute that describes the
alias relationship.

Also take into account the different alias when applying a combiner.