Rewrite ++alto.

Most of the first part of ++ze is now clean and understood.