use FurnaceFactory to create Furnace instance