Algorithms And Reformulations For Large-Scale Integer And Stochastic Integer Programs