Merge upstream changes from pylearn2