Per this guide, it's best to run code that runs both in eager mode and graph mode. I think we can extend our estimator classes to support their execution in eager mode, i.e., we can have one eager execution training script that runs just like estimator.train but in eager mode. This allows for easier debugging of our programs and lets us to easily switch the same model training/evaluation/prediction to graph mode.