St Mirren striker Steven Thompson has signed a new contract that will keep him at the club until at least the summer of 2014.