how does a boiler heat water