graph and drawing algorithms framework