add MemoryDataLayer for reading input from contiguous blocks of memory
add size accessors to MemoryDataLayer

This will facilitate input size checking for pycaffe (and potentially
others).
pycaffe: add Net.set_input_arrays for input from numpy

This requires a net whose first layer is a MemoryDataLayer.
add basic tests for MemoryDataLayer