Add fill_diagonal_offset()

Related to issue #1688.

Add a new function theano.tensor.fill_diagonal_offset(a,val,offset) which is currently only work for matrix  as well as the corresponding unit test.

However, as the input 'offset' is an integer, grad of it is undefined. How can I write an test_grad of an undefined grad?( the test can not past now because theano.gradient.grad_undefined will raise an exception ) 
You should delete this file since you already have all the tests in the test_extra_ops.py file and the Op is defined in extra_ops.py.

If the purpose of this file was to run just the FillDiagonal tests, then you should use the nosetests selection syntax instead.  See http://nose.readthedocs.org/en/latest/usage.html#selecting-tests