Including support for 'full' convolutions. It uses the existing pad functionality of the c/cuda code. If mode == valid, I make pad = filter_size -1. This is passed to the C code, and everything else gets taken care of automatically.

The theano-nose for test_full does not pass, however, the test function test_gemm()  passes. @nouiz: do you know why?