У вас тяжело с модификаторами доступа. Почитайте про них.
И давайте запилим отдельный файлик для каждого класса.
Во-первых, это банальное уважение к коду.
Во-вторых, и в-главных, в коде шелла не будет ни слова о командах, какие он поддерживает. А это значит, их легко будет поменять.