1. A system for manipulating a first object in relation to one or more other objects comprising: a computer; a computer readable medium, operatively coupled to the computer, the computer readable medium storing program codes causing the computer to execute a game by performing functions comprising: displaying the one or more other objects on a display such that each of the one or more other objects has a geometric shape, is arranged in an orientation of the geometric shape, and is non-overlapping with respect to any other objects; displaying the first object in a first position on the display, the first object having a geometric shape and being arranged in a first orientation of the geometric shape; determining one or more best destination position and orientation candidates of the object based on at least one of a selected portion of the display, the geometric shape of the object, the geometric shape of one or more subsequently available objects, one or more possible destination position and orientation candidates, the height to width ratio of an object or the other objects, the number and position of any empty cells next to the other objects, any gaps next to the other objects, and any empty cells or gaps subsequent to positioning and orienting the object; wherein the one or more best candidates include a first set of best destination position and orientation candidates and a second set of best destination position and orientation candidates; displaying the one or more candidates in a format other than a format for the first object and the one or more other objects, wherein the format includes at least one of a color, shading, transparency, texture, and patterning; displaying the second set of best destination position and orientation candidates instead of the first set of best destination position and orientation candidates in response to a second input of the user; receiving a user input from a user to select a destination position and orientation of the first object, wherein the destination position is next to at least one of the one or more other objects, the first object being non-overlapping with respect to any one of the other objects, wherein the user input includes selecting a portion of the display associated with the destination position and selecting a portion of one of the best destination position and orientation candidates; and positioning and orienting the object at the destination position and orientation in response to the user input; wherein determining includes determining an order or rank of the one or more best candidates such that the first set of candidates includes candidates having a higher order or rank than candidates of the second set.