Added some documentation
Added more test cases