STOCK PURCHASE AGREEMENT BY AND AMONG HEMACARE CORPORATION. TERAGENIX CORPORATION AND THE SHAREHOLDERS OF TERAGENIX CORPORATION Dated as of August 29, 2006