Rebased and added files again for Srinivasa Teja.
Rebased and added files again for Srinivasa Teja.

velicue/cs5356,anasb/cs5356,anasb/cs5356,AndyLiu0429/cs5356,AndyLiu0429/cs5356,velicue/cs5356,AndyLiu0429/cs5356,velicue/cs5356,anasb/cs5356