move hardware-specific stuff to a separate directory