parts: (each part _could_ be a general interface, atm this idea seems it can increase difficulty) - get data - transform data to model format - train model,probably with Trainer - save model - load environment - link environment to model - test model succeeds at environment
the points most important to abstract are providing data to the model, and defining the environment so environment, and records of action in that environment
