first commit of mug, roughly working demo