Introduce ICourse interface
This interface is supposed to provide a future abstraction between editor and trainer.