New argument `return_list` to PureOp.__call__()

This makes it possible to obtain the Op's outputs as a list without
having to go through ``make_node(..).outputs``.
Fixed test values with ``ifelse``

By using ``__call__`` instead of ``make_node``, test values are properly
set.
PEP8
Added regression test
Merge pull request #1314 from delallea/test_value_fix

Fixed test values with ``ifelse``
Set default error in fail, so "None" is not raised.
Set error before failing when checking dimensions of inplace outputs
Punctuation.
Merge pull request #1320 from lamblin/set_error_in_fail

Set Python exception when C code fails
FIX typo where src_code => code
Merge pull request #1322 from kuantkid/fix_compile_typo

Typo in try_compile_tmp in op.py
Changed graph traversal routines in scan_utils.py to not visit any subgraph more than once
Improved comment on the new visited set in scan_utils.py traversal routines.
Fixed crash for unimplemented elemwise gradient

This bug was reported by Michael McNeil Forbes on the mailing-list.
PEP8
Update link
Merge pull request #1327 from benmccann/master

Update link
removing a bug
add unit test
Fix bug when unpickling previous versions of CAReduce