Add a mode to docgen to run the code samples in the documentation.

This alleviates copying them elsewhere to ensure they are not broken.
New opt: T.dot(A,B)[i] -> T.dot(A[i],B)
ValueError when n_streams is too large (On GPU)
Cache c code
remove line not used.

It was used during development, but not needed at the end.
Allow permutation to return just one permutation.

fix gh-2158
Preliminary version of dot+subtensor optimization, supporting arbitrary indexing.
Merge pull request #2078 from abergeron/doc

Add a mode to docgen to run the code samples in the documentation.
adding advanced indexing to theano tensors
putting advance_indexing as part of the TestAdvancedSubtensor class
Fix test in fast_compile
fix test in FAST_COMPILE mode.
Fix test in FAST_COMPILE mode
pep8
correcting the function call self.equal_slices
Merge pull request #2164 from nouiz/tests

Fix buildbot errors.
Add pseudo-math in the docstring for GemvSS and OuterSS.
Merge pull request #2167 from abergeron/blocksparse_doc

Add pseudo-math in the docstring for GemvSS and OuterSS.
Closes #2141
Clarified docstring and removed unnecessary subtensor.
Make get_scalar_constant_value() infer in Subtensor(Join of vector).

This cause some advanced subtensor to infer False for broadcast instead of True.

fix in part gh-2165