Text this: Solving the Generalized Steiner Problem in edge-survivable networks