Merge pull request #433 from shelhamer/eltwise

Elementwise layer takes sum or product; caffe_gpu_{add,sub}
Correctly invert the swapping of colour channels

In the 'deprocess' method, get back the image with the original channel order
by inverting the original transform, rather than reversing the tuple which is
incorrect.
Merge pull request #443 from jamt9000/correct-deprocess

Correctly invert the swapping of colour channels in Python API 'deprocess'
follow-up on #443 to invert k channels (instead of 3)
Correctly invert the swapping of colour channels

In the 'deprocess' method, get back the image with the original channel order
by inverting the original transform, rather than reversing the tuple which is
incorrect.
follow-up on #443 to invert k channels (instead of 3)
add convert_imageset option to resize images; use in
convert_imageset.cpp and document
Don't modify data pointers in im2col loop
Added max_idx to Pooling layer CPU
Default mask idx is -1
Added max_idx to Pooling layer GPU
Added test for  Pooling layer GPU
Use mask_idx to compute backward Max Pooling
Remove top_data from backward Max Pooling
Set bottom_diff to 0 and remove Async memcopy
Cleaned prints from test_pooling_layer.cpp
Fixed parameter order
Use loops in GPU again to avoid over-writting of bottom_diff
Added test for maxpool layer followed by dropout
Attempt to use AtomicAdd but it seems slower