The Bank of England raises interest rate to 3% from 2.25% as it warns UK faces a “challenging” two-year slump.