Completed download process, added testcases, name refactoring