Clean up pycaffe internals

This PR makes no interface changes except for https://github.com/longjon/caffe/commit/88221c9a45120bd892180444c4d6ee9c41841079 (@shelhamer and others, let me know if that will cause any problems). It does bring pycaffe more in line with standard (and Google) C++ style.

More importantly, this PR makes it possible to use the `_caffe` module in C++ code that embeds the Python interpreter. This will enable a forthcoming PR.

I'll let the commit log tell the rest.