Better default weight, also conform with the String parsing constructor
New interfaces that help us creating instances
Decoupled edges and nodes and a new constructor for weighted edges