--Implemented conversion of accelerometer output to cm/s^2.  Conversion seems to work correctly, but when the rover appears to be at rest and level, I get small acceleration readings in the x and y directions, and a reading of less than 1G in the z direction.  Still need to think some more about this and how it will affect the data that I'm collecting from the IMU, as well as how to compensate for it.  A simple linear offset (based on data sampled at startup) might be the easiest way to compensate, but I'm not sure if it will be correct in all cases.
--Started researching conversion factor for gyroscopes, but not convinced that it's fully necessary, since current DCM algorithm on IMU works without unit conversion.  Also started to think about a self-calibration function for the gyros, since I think it is a very safe assumption that when the rover starts up there will be no rotation about any axis.  Implemented a quick function that sampled the gyros for a fixed amount of time (tried both 1s and 10s), averaged that sample, and then subtracted that number from future gyro readings.  If the rover is at rest (rotationally), then all gyros should read 0.  When I tried my new function (under both time limits), I got readings on the gyros that were higher than the DCM algorithm's built-in gyro offset, which just takes a fixed number from an offline calibration routine and subtracts it from readings.  I think I might have some bug in my calibration routine, but I haven't been able to find it yet.