Added documentation and corrected clone
Added some documentation and fixed backtracking
Added shuffling