beginning hw5, fixing old stuff and implemented some of part 1