Buttload of changes. Aabha's code changes not reflecting in this commit.