customize compiler setting in Makefile.config

in case of issues with default compilers or exotic platforms.
Update caffe.proto

Add pad_h, pad_w, kernel_size_h, kernel_size_w, stride_h, stride_w to support pooling on rectangle regions.
Update vision_layers.hpp

Replace pad_, kernel_size_, stride_ with pad_h_, pad_w_, kernel_size_h_, kernel_size_w_, stride_h_, stride_w_ to support pooling on rectangle regions.
Update pooling_layer.cpp

Replace pad_, kernel_size_, stride_ with pad_h_, pad_w_, kernel_size_h_, kernel_size_w_, stride_h_, stride_w_ to support pooling on rectangle regions.
Update pooling_layer.cu

Replace pad_, kernel_size_, stride_ with pad_h_, pad_w_, kernel_size_h_, kernel_size_w_, stride_h_, stride_w_ to support pooling on rectangle regions.
fixing pooling SetUp() to allow default values for stride and pad
add tests for rectangular pooling regions
Merge pull request #611 from shelhamer/makefile-config-cxx

Customize compiler setting in Makefile.config
fixed style errors
added gradient check for non-square pooling
Merge pull request #614 from ronghanghu/rectangular_pooling

Rectangular pooling
Don't make clean when running linecount
Merge pull request #647 from jeffdonahue/nocleanlinecount

Don't make clean when running linecount
Dump compiler warnings to *.warnings.txt; use "make warn" to print them
Output a lint report for every source file linted; use to lint
incrementally
Merge pull request #649 from jeffdonahue/warnlog

"make warn" to print compilation warnings; "make lint" runs incrementally
Makefile: cleanup lint/warn report logic (and make the two more consistent)
fix bug introduced by warning logs: errors didn't print because they
are logged to the warnings file
Merge pull request #661 from jeffdonahue/fix-error-output

Fix bug introduced by warning logs (errors didn't print)
makefile hotfix