1. addModuleDependency(..) now checks for circularity
2. corresponding unit test added
3. addCirculrModuleDependency(..) depreciated