1 more question, do you happen to know a small motor driver chip. i am using a TC4424 to amplify the signal from the arduino enough to run a motor but it is fairly big and i would want a small one. is that possible?
Depends how small, and how big a motor you want to drive. If you want to drive justabout anything, you'll want a couple of ir2184s or similar and some insane n-channel mosfets like the fdb6670al, which should be good to 20A or so while still being able to fit 2 to 4 full motor channels on something the size of the arduino.
For smaller stuff, just search chipmakers' sites for motor driver chips. try to find the parametric search so you can ask for what you need. You will be amazed at how much power a tiny little chip can control these days, especially since they got mosfets below 10mOhm at Vgs=4.5v.
Only problem with tiny motor drivers is that they're all surface mount, and surface mount motor drivers can easily desolder themselves and cause a huge mess. Make sure it has plenty of headroom, and I suggest some mechanical mounting for it too