The first thing is easy to do. The second isn't that hard either, but involves a lot more math - if possible at all.
http://www.smcars.net/forums/115076-post81.html
That will help you with your first issue. Read it carefully, it should work.
For your second one, you will do about the same, but then if you move your Body_Null, you will need an x amount of rotation to your Wheels_Null. Involves the same way of working, but then instead of
1*[Body_Null.Rotation.P], you will need something like
1*[Body_Null.Move.Z], if that exsists. Theoratically, that should work.
Try it out. If it doesn't work out, I'll see what I can do for you.