Anthony Stokes bagged a hat-trick as Celtic beat St Johnstone 3-0 to move 21 points clear in the Scottish Premiership.