Within-channel LRN layer

(Not sure how I accidentally submitted this without any description.)

This PR implements within-channel local ~~contrast~~ response normalization across a square neighborhood of each input channel, a la cuda-convnet's `rnorm` layer [1].  This layer is used in many of the cuda-convnet CIFAR example architectures, including our current `cifar_full` example that was based on the `layers-18pct` example in cuda-convnet, so I've updated that example to use this new layer type here.  It doesn't make much of a difference -- running the full training gets to (exactly) 82% accuracy, as opposed to 81.65% the old normalization across channels was getting.  It is also unfortunately slightly slower, taking 6 minutes and 57 seconds for 5000 iterations (compare to 6 minutes 43 seconds for the cross channel normalization), but I think this might make sense as we're summing over N^2 input pixels for each output, instead of N.  I think it's nice to be able to reproduce these network architectures exactly though, even if it doesn't make much of a difference which type you use in practice.

Because I'm not smart enough to write something along the lines of the code for the current cross-channel LRN layer [2], I basically implemented this under the hood as a sequence of 5 other layer types, including 2 new ones: the `EltwiseProductLayer`, which computes outputs `z = x .* y` (excuse the MATLAB notation) on >=2 input blobs  and `PowerLayer` (open to suggestions on a better name..), a neuron which computes `z = (alpha + beta * x) ^ gamma` for fixed values of those parameters.  This implementation has a small memory penalty as it uses a few internal blobs for storing the intermediate results of each layer's computation.  If somebody wanted to rewrite this later without using any "helper layers" to make it more memory efficient, they could do that.

[1] https://code.google.com/p/cuda-convnet/wiki/LayerParams#Local_response_normalization_layer_(same_map)

[2] https://github.com/BVLC/caffe/blob/master/src/caffe/layers/lrn_layer.cpp