prune regions more aggressively

if we determine that a region is "final" (i.e., it is not waiting for
any more reads to show up), we can toss it out after analyzing it.
Pulled out the grpah code into its own class

I was thinking this was going to help me prune vertices a little
bit more aggressively, but after writing it, I realized that it is more
time/space efficient to do it differently. In any case, if we want to
fiddle with the implementation of the graph, it's off in its own class
now.
bugfix: checking if region exists...

was being done incorrectly in is_region_final
more aggressive region pruning
move graph edge weight incr code into graph class
switch to using a persistent graph
change how orientation counts are reported

previously, breakdancer reported the number of fwd/rev reads in regions
supporting an sv EXCLUDING reads that supported any previous svs. now,
the counts reported are calculated at region creation time and do not
vary based on previously reported svs.
don't double count self links in graph