Added to test to determine the behavior of the BLAS and intialize the memory as needed to avoid unexpected NaN's.
Increased the version in CGemv::c_code_cache_version.
Correct the way I was calling the __init__ functions on the parent classes of CGemv and updated associated tests to always use the fix for issue 1569.
Fixed pep8 issues.
Moved code that determines whether the memory initialization is necessary to a function that ensures the code is only executed once.
Altered code to zero out the memory that we create.
Fixed API compatibility issues and simplified memset call.
Optimized code when array is c contiguous and added test to warn user.
Resolved issue #2055

Remove the `double round(double)` in pymath.h for Win32 only by defining
`HAVE_ROUND` via the `-D` switch of `nvcc`.
The `double round(double x)` function is present in CUDA
6.5.13/6.0.37/5.5.22/5.5.11/4.1.28/4.0.17, so I think it's safe to remove
the one in `pymath.h`.
pep8
In the ShapeFeature, convert x.shape[1] to Shape_i. This will help compare shapes.
Add ShapeFeature.same_shape, that try to compare 2 var shapes.
Add local_useless_inc_subtensor.

Remove the IncSubtensor when we can infer all the shapes are the same.
Make opt local_useless_subtensor convert to subsample when we reverse.
Disable opt in some case discovered in new tests crash with the new opt.
Make optimization more deterministic
Merge pull request #2060 from ziyuang/master

Resolved issue #2055
Better auto function name if we call var.eval().
small doc update on Theano vision.
skip some tests when scipy isn't available.
Add comment