England booked their first World Cup final appearance for 27 years with an eight-wicket rout of holders Australia at Edgbaston.