Updated trainer framework - untested.