[WIP] Implementing Averaged SGD

Working on implementing averaged SGD for both classifier and regressor for #543
Aha, that's a good idea. I don't think you would want to add ```(T - t)``` to the averaged weight vector though, you would want to add ```(t' - t)``` where ```t'``` is the next iteration you encounter a non-zero feature at ```j```? Otherwise I believe you double count that entry and all entries afterwards. You could maintain another vector that contains the previously seen non-zero value for each feature ```j``` and subtract that from the averaged weight vector before doing the update, right?