added check to avoid adding children with duplicate values (queens on same row)
This greatly improved results.
added printer class to print dynamically on same line
move classes to separate files
use dict to plot graph instead of 2 lists
add command line parser
re-write for launching with paramaters in command line