Swansea City battled through challenging conditions to secure a 1-1 draw against Luton Town at Kenilworth Road.