5-dimensional black hole solutions of Einstein's equations with 3 commuting Killing vectors admit a simple geometric classification in terms of rod diagrams which characterize the degenerations of the Killing vectors. Einstein's equations reduce to an integrable system and an inverse scattering transform can be used to solve them. We describe how this technique has been used to generate black holes with horizons with various topologies such as unions of spheres, cylinders and lens spaces.