You can integrate acceleration to obtain velocity data, and you can further integrate velocity to get position. Integration is just the process where you just cumulatively add something up. For example, if you get a new acceleration reading every 0.1 second, you assume the acceleration was constant over the last 0.1 second; you then find the change in velocity over that same time interval by adding 0.1 seconds * acceleration to the current velocity estimate, and repeat this every time a new acceleration reading comes in.
This is what's known as 'dead reckoning', and it has some down sides. Most important is that because you basically are just adding up measurements across time, any errors (e.g., noise) in that data also accumulates, so your approximation of where you are, where you're headed, and how fast you're going all degrade over time.
As Rocketmagnet mentioned your error is going to grow with time. The error model typically used in inertial navigation is an exponential growth.
To minimize this you must provide external updates. The mechanism typically employed is a Kalman Filter. The inertial sensors provide very good high rate updates. Your external source provides less accurate but long term stable updates at a lower rate (typically something like GPS). These two combine to give you a good combined solution. Not all systems use GPS as the update source. For instance, the IR imager on the front of the Nintendo Wii remote provides the source of these updates.
I'll give you an example of the cost is no factor side of things. I build systems for aerial surveying that utilize inertial systems that cost 100,000+ Euro. With these systems and high end geodetic GPS receivers I can pin-point the location of the IMU to a 2" volume all day long when GPS coverage is good. In the absence of GPS updates (urban canyons, tunnels, etc.) after about 60 seconds we have an error margin of about 10cm. Systems with this level of performance are typically ITAR controlled goods as they are weapons grade devices.
Lower quality MEMS inertial systems are used all day long in less demanding applications yielding meter sub-meter level position and attitude. These lower quality systems still employ the same Kalman Filtering mechanism. The real downside to these lower cost units is that your drift error will grow at a much faster rate.
Edit:
To answer your question as to what is important to look for in an IMU. There are a couple of things you want to look at. The first is temperature stability. Some MEMS sensors are going to have outputs that vary by as much as 10% over temperature range. These may not matter if you are at a constant temperature during operation.
The next thing to consider is the gyro noise spectral density. Obviously the lower the noise amount the better. The following link provides documentation about how to get from the spectral noise density to the drift (in degrees per unit time). http://www.xbow.com/pdf/AngleRandomWalkAppNote.pdf
For acceleration you want to look at sensitivity, and bias in addition to the noise. The noise level will give you an idea of how quickly you're going to integrate error.
Best Answer
Here's a tutorial on implementing a direction cosine matrix for an IMU: http://gentlenav.googlecode.com/files/DCMDraft2.pdf
Take a look at the ArduIMU pages: http://code.google.com/p/ardu-imu/wiki/Theory
Here are a couple of open source projects which do this. Reading the code should give some clues:
http://code.google.com/p/gluonpilot/source/browse/trunk/Firmware/#Firmware/rtos_pilot%3Fstate%3Dclosed
http://code.google.com/p/sf9domahrs/