Fix multiple bugs in StoerWagnerMinimumCut

- Negative edge weights cause an exception in the constructor
- Zero edge weights work
- 0 < Weights < 1.0 work
- Multigraphs work
- Graphs with less than 2 vertices cause an exception in the constructor
- Graphs with 2 vertices work
- Removed unneeded List to conserve memory
- Constructor takes UndirectedGraph instead of WeightedGraph as weights
  are optional but directed edges are forbidden. This is an incompatible
  interface change!