ещё проще. только не клеить все пластины на мертво, хотя бы одну сторону на болтики или магниты (если неодимы, сверху лак, краска, клеить/проложить плёнку,... при повреждении защитного слоя, поверхность любит превращаться в труху). из листового один из простых способов соединения
как удобней сделать и потом играть, так и делай. направление же можно указывать абсолютное или относительное. для перемещения только по внешним слоям хватит начиная хоть от двух кнопок (на одной тоже можно, но это хардкор).
в бесконечном цикле смотреть тики и состояние входов. ещё есть таймеры и прерывания. извращаться с одной кнопкой можно по разному, в том числе и просто поворот в одну из сторон.
отступы для вложенного кода видишь? это сейчас кода кот наплакал. а когда длинющая сплошная простынка, читать становиться утомительно + очень легко не там открыть/закрыть скобочку. когда и если придёт понимание про отступы, попробуй между функциями пустой строкой ограничиться, а разделение коментариями оставить для каких блоков - вот тут настройки, а это для работы с моторами, а тут функции работы с экраном, тут статические функции класса,...