В чем разница между оболочкой, консолью и терминалом?

Я запутался в терминологии. В чем разница между оболочкой, консолью и терминалом?