Wars in Iraq and Afghanistan cost £18 billion, admits Brown