PyramidLevelLayer for spatial pyramid pooling [under development, don't merge]

Note: DO NOT use the code now, for it is incomplete and under development.

This is a PyramidLevelLayer implementation, which can be used to build spatial pyramids, especially designed for #560 (Spatial Pyramid Pooling).

The pooling region is calculated in the following way:

A pooling region starts with `hstart` (include) and ends with `hend` (exclude):
`hstart = floor(ph * bin_size_h_)`
`hend = ceil((ph + 1) * bin_size_h_)`
where `bin_size_h_ = float(bottom[0]->height()) / bin_num_h_` is float-point bin length
and similar for `wstart` and `wend`


I will add tests and update.