Revisiting the Voronoi Description of Protein-Protein Interfaces: Algorithms