Finding (Near-)Optimal Steiner Trees in Large Graphs