add string constructor to Solver (analogous to Net)
pycaffe: expose SGDSolver
make Solver::net return a shared_ptr rather than a raw pointer

This makes it possible to manage the Net pointer externally (e.g., from
the Python interface) using a shared_ptr. No existing code is affected.
switch from inheritance to directly overriding methods for caffe.Net

Also, internally drop the "Caffe" prefix for classes exported by the
internal _caffe module. This change means that SGDSolver will
automatically return a Net with the "nice" Python interface rather than
the internal one, (and avoids the extra layer of method wrapping that
results from switching to composition).
pycaffe: expose SGDSolver.net
pycaffe: introduce CheckFile helper
pycaffe: expose SGDSolver.solve
Merge pull request #286 from longjon/pycaffe-solver

Expose SGDSolver to pycaffe, switch from inheritance to overriding for caffe.Net