title: babel vs babel-core vs babel-loader vs babel-preset-2015 vs babel-preset-react vs babel-polyfill
body: <p>I was setting up Webpack for my React project and got confused between <code>babel</code>, <code>babel-core</code>, <code>babel-loader</code>, <code>babel-preset-2015</code> and <code>babel-preset-react</code>. I know that Babel is needed to transform ES7 or ES6 code to ES5 but in my <code>package.json</code> I have installed all these dependencies except Babel and they also as <code>devDependencies</code>.</p>
  
  <p>Can someone please explain what's the difference between all these and why all of them are needed for my project? Isn't there any single dependency to replace them all? And if they are so important, why are they included as  <code>devDependencies</code>? </p>