specify NetParameters directly in the SolverParameter
log {Net,Solver}Parameters on Init
allow multiple test nets
add a lenet example of specifying train/test net directly in solver;
multiple test nets
multiple test_iter
lint and two test_iters in lenet_consolidated_solver
add script to run lenet_consolidated_solver and add comment with results
for first/last 500 iterations
fix proto comment for multiple test nets
require either train_net or train_net_param to be specified
match existing python formatting
make python wrapper mean match binaryproto dimensions

ilsvrc_2012_mean.npy has dims K x H x W.

Code written for the old D x D x K mean needs to be rewritten!
add python io getters, mean helper, and image caffeinator/decaffeinator
pycaffe comments, lint
expose input and output blob names to python as lists
set input preprocessing per blob in python
pycaffe Net.forward() helper

Do forward pass by prefilled or packaging input + output blobs and
returning a {output blob name: output list} dict.
bad forward/backward inputs throw exceptions instead of crashing python
python Net.backward() helper and Net.BackwardPrefilled()
python forward() and backward() extract any blobs and diffs
don't squeeze blob arrays for python

Preserve the non-batch dimensions of blob arrays, even for singletons.

The forward() and backward() helpers take lists of ndarrays instead of a
single ndarray per blob, and lists of ndarrays are likewise returned.

Note that for output the blob array could actually be returned as a
single ndarray instead of a list.