everything compiles and runs to this point, need back propagation still