REV3

added command line parameters
implementation supports depth first search and breadth first search