Added more comments
Added more tests