Wilfried Bony grabbed a vital last-minute winner for Swansea against Newcastle to put them six points above the bottom three.