Andy Fisher was outstanding in goal as St Johnstone recorded an unlikely but potentially huge win against Celtic.