I have already submitted a patch to address device detection. It's very simple and uses the user agent string. It may not be the most elegant way to do detection, but it works and it's really fast. I tested the detection using an iPhone and an iPad, but I don't have any other devices to test with. Regardless, it should pick up 99% of mobile devices, if not more.
I've also figured out a way to switch to the mobile layout without messing up byte compile. So far the important "proof of concept" pieces are falling into place perfectly.