Class for building the graph created, as well as classes for keeping the data and a separate class that for assigning edge strengths