Use broadcast for all gpuarray python ops (where it makes sense).
Add (selected) reductions operations on arrays using the new ReductionKernel.
Tests for reduction and fixes for the problems found.
Fix syntax error.
Remove dead code and stray print.