Why are these classes `private[scala]` rather than just `private`?