Implemented Solve Puzzle functionality
Changed how solve works (only fill in squares which haven't been filled in so far)