Minimal connections: the classical Steiner problem and generalizations