It seems to me that some of these changes are leading to a greater distinction between what things are called in the C++ and python layer.  Is that really a good idea?  It seems like it could get annoying when making changes in both layers.  I'm wondering if we should change some names of things in the C++...