Cameron promises referendum on Britain's place in Europe