Rework

Removed pointer nodes to prevent the need for high maintenance.

Reworked shuffle method to randomly swap each node once instead of
finding the empty node and firing the click event for a neighboring
node.

Added shuffle validation method to insure that the random shuffle is
solveable. (Needs work still)

Slight improvements on structure. NodeCollection and PuzzleForm are more
separated than previous version.