If you want a complex course management system and you can live with a web-based solution then Moodle is also something to look at.