для чего поддерживается webpack
Думаю, для того, чтобы создатели могли как-то получать деньги.
Webpack "еше один" удобный инструмент для создания файла скриптов/стилей, обработки каким-то образом картинок и прочих возможных дел. Другими словами - еще один удобный инструмент для веб разработки.
Gulp делает примерно тоже самое. Еще из популярного был (и есть) -
grunt. Просто три похожих инструмента, каждый со своими плюсами/минусами (как обычно). Так же есть и другие различные менее популярные (на мой взгляд) "сборщики/таск-раннеры".
Npm тут слегка не в тему в этом сравнении. Но если говорить об "удобстве" разработки - то в тему. С npm удобнее) но это пакетный менеджер и его задача отличается от задач webpack/gulp/....