fix lbfgs code for float32
make monitoring set much smaller
pull apart training code