St Mirren savour first win at Ibrox in 34 years