There is a lot of stuff publicly exposed in Alice that really shouldn't be.
We should only expose publicly what we expect someone would use.
We want third-parties to be able to build Master effects, and as such, much of the stuff in Core needs to be public. the convention was to use a leading underscore for methods that were meant top be private. I chose that over a more complex pattern (closure-based) for simplicity.