Refactor DataLayer using a new DataTransformer

Start the refactoring of the datalayers to avoid data transformation
code duplication. So far, only DataLayer has been done.
Refactor ImageDataLayer to use DataTransformer
If specified, --gpu flag overrides SolverParameter solver_mode.
Merge pull request #961 from jeffdonahue/gpu-flag-overrides-solver-mode

If specified, --gpu flag overrides SolverParameter solver_mode.
Merge pull request #954 from geenux/dev-redundant-data

Refactor data layers to avoid duplication of data transformation code
restore old data transformation parameters for compatibility
compact net parameter upgrade
upgrade net parameter data transformation fields automagically

Convert DataParameter and ImageDataParameter data transformation fields
into a TransformationParameter.
upgrade model definitions for transformation params
Merge pull request #963 from shelhamer/fix-transform-param

Make data transformations backwards-compatible and upgrade models
fix parameter for transformation in ImageDataLayer constructor
move {InnerProduct,Eltwise}Layer to common instead of vision
fix internal thread interface confusion

thanks @ronghanghu for pointing this out in #964
[example] add fully-convolutional efficiency note + confidence map

- spell out fully-convolutional efficiency
- add confidence map
- fix input size: 451 x 451 is correct for an 8 x 8 output map by the
  equation input size = 227 + 32(d-1) for output map dimension of d
fix bug for resizing images.
Merge pull request #976 from alfredtofu/dev

fix image resizing dimensions for IO
'caffe test' prints all scores and their names
Merge pull request #979 from jeffdonahue/caffe-test-output

'caffe test' computes and prints all scores and their names
fix memory_used_ by computing after SetUp
Merge pull request #980 from jeffdonahue/fix-memory-used

fix memory_used_ by computing after SetUp