On Iterative Hard Thresholding Methods for High-dimensional M-Estimation