Newcastle United's resurgence continued as they beat ten-man Aston Villa 3-0 at St James' Park.