RMSProp implementation modeled off of AdaDelta
Add running averages as members of RMSProp class

This enables us to use them as monitored values.
Reorder things in SGD.setup, so we call learning_rule.get_updates
before learning_rule.add_monitoring_channels.
Also add a little bit of doc.
PEP8 compliancy
fix for issue 1057
Improve memory usage when checking for NaNs
Addition of pylearn2.utils.contains_inf and pylearn2.utils.isfinite
Fix izip usage in python3.

fix gh-1046 I guess there is other python 3 issue.
Update doc about izip
Issue #1056: improve reshaping in topo_view_to_design_mat