シェルの作成についての課題なのですが、

MyshellはCshellと違って、Cで実行できていたコマンドや機能のうち
働かないものがある。これらを調べ、どのような機能が実行できないか、
なぜできないか、どのような機能を追加すればいいか?

例えば次のが実行できない

エイリアス、ヒストリー、ワイルドカード、ファイルへのリダイレクト、
shellプログラミング、ディレクトリー操作(popd、pushdなど)

これらから4つほど(エイリアス、ヒストリーは必須)をmyshellに追加せよ。

という課題です。助けてください、お願いします。できればソースを、、。