Add most of the functionality of SemaineTrainer project.