fixed square clone bug, implemented solver
need to rearrange what function does what in solver