Use private class names

Implementations are renamed with _ prefix, indicating "private" module
details.