Expose SGDSolver to pycaffe

This allows training nets directly from Python (without using subprocess or syncing net parameters with the filesystem). The resulting nets can be immediately examined and used for prediction through the existing Python interface. (This is useful for quick interactive experiments, and scripts that need to train nets in a loop or perform intermediate processing during training.)