Make GPU Ops accept TensorType output gradients (transfer them to GPU)

I'll have to do the same thing in Pylearn2 for cuda-convnet.