What is the difference between a battery and a supercapacitor?