MUESLI, an operating system dedicated to teaching microprocessor software development