Initial Commit

This commit is a dump of what was done quite some time back. Everything
is disorganized. Need to do lot of house cleaning.