Refactored trainer.py, added new gradient prediction net with padding and 3x3 kernels