[WIP] Implementing Averaged SGD

Working on implementing averaged SGD for both classifier and regressor for #543
It's possible to have an asgd run using adagrad or adadelta. I was thinking about having a learning_rate_type parameter that could be set to one of {'adagrad', 'adadelta'}, but do you think it would make more sense to have a learning_rate_type set to {'adagrad', 'adadelta', 'average'}?