Added ToDot method

The ToDot method will generate Dot notation files used by visualization
tools.
Fixed HashSet operations

Attempting to access a non-existent element in a HashSet was throwing an
exception.  Changed logic to fix this.
Changed ToDot method to public

Needed public access for proper usage.
Added a String Label

String label can be used for visualizations