Exploring Exponentially Many Programs at Once with E-Graphs