Nice work. I did something similar with a coin-like object (nearly flat cylinder) in Unity. It's a bit simpler since it's round, so it's just a matter of making it rotate towards the direction it wants to go. Though in my case, I wanted to have it interact with the physics, so I actually gave it an impulse on the opposite edge of the direction it wanted to go.
You can see my implementation in action here.
Is it possible to see the source code (I also try learn unity), so I can learn some of the basics of your implementation??