Lewis Hamilton roars back to his best at Hungarian Grand Prix