MCPU - A minimal CPU for a CPLD