Stochastic Reformulations of Linear Systems: Algorithms and Convergence Theory