Use gradient_undefined instead of None in MRG uniform
Catch exception and forward NullType to input gradients, instead of failing
Try to fix how Null gradients are propagated in Scan

- propagate NullType when summing different gradient contributions
- identify which outer outputs of the scan node implementing the grad
  should be Null
- replace them, and the corresponding inner variables, with zeros
  of the appropriate size, so the scan node can be compiled and run.
- introduce a difference in undefined gradient because going through
  a shared variable with updates, and because a NullType was returned
  by the internal graph.
Actually compile and run the grad scan node.
Update comment, indentation.
Mark first batch of really slow tests.
Mark some more tests as slow and do some cleanup while there.
pep8 in tutorial
Add tutorial example in the tests.
Fix opt bug not release that make in the end a stability opt not applied.

reported by David Huggins Daines
Added the cumsum function similar to numpy's one.
Removed forgotten debug comments.
Merge pull request #1699 from nouiz/test_example

Fix stabilization opt not being applied(in dev version only)
Make sure local_greedy_distributor won't be skipped again.
Add comment.
In tests, use comparison that give more error message when it fail.
Make ScipyGer opt faster by not creating new object each time.
Fix ScipyGer compute_map unhandled error.
Make test error more informative.
Add gpu blas timming.