Computational Heterogeneous Electrochemistry – from Quantum Mechanics to Machine Learning