actually set up dependencies between the classes