The High-Throughput approach to Computational Materials Design