Reshape single input batches for inputs of varying dimension

To feed inputs of varying dimension, the DATA layer reshapes its prefetch and top blobs when the batch size is 1. This is useful for models of variable input size, such as fully-convolutional models.

By the grace of #594 this is a simple change.
I think we discussed this a while ago, but: my feeling here is that reshaping of a layer's tops due to that layer's internal business should be done in `Forward`, while `Reshape` should be reserved for reshaping as a function of bottom shapes.