Making Your Own Shell