STOCK PURCHASE AGREEMENT dated as of December 23, 1996