Budget 2017: Philip Hammond puts aside £3bn for 'all Brexit outcomes'