Efficient algorithms for exact hierarchical clustering of huge datasets: Tackling the entire protein space