Adaptation of the `bg` library to work properly with the newest major version of the NetworkX library, which is the foundation of `bg`. The only things that might break with this:
* `BreakpointGraph.bg.edges` and `BreakpointGraph.bg.nodes` now return view like object, rather than an indexable list, so if you've used internal `bg` field in the `BreakpointGraph` data structure for direct access to the stored data, make sure to adapt to the new view like approach.
* following the change in NetworkX, all edge/node data attributes are now located in the `data["attr_dict"]` dictionary instead of the `data` dictionary. This is a simple one more layer fix that can be done in every case, where internal data for the edges/nodes is utilized directly, rather than using the respective attributes (e.g., `multicolor`, `data`, etc) on the `BGVertex` and `BGEdge`.