Beyond SGD: in search of a preconditioner