--Tested libbeagle code modified with a SIGALRM timer to fire the code that checks the state of the GPIO lines.  Based on 30:1 gearing on the motors and 400 pulses per revolution on the encoders, need to be able to capture 12,000 pulses per second if the wheel is turning at 1 revolution per second (motors are capable of 200 rpm or 3.33 revolutions per second) times 2 (because of two encoders).  Attempting to run the SIGALRM timer set at 40 microseconds (25,000 iterations per second) resulted in a runing time of ~5.6 seconds, and it should have taken 1 second.  I think that I can conclude from this that this code is unusable for my purposes--I think that the concept of polling the devices for their data, rather than being driven by hardware interrupts, is the wrong way to go.
--I believe that I need to develop a kernel module that responds to interrupts caused by the state changes on the encoder data lines.  In my research I have found rotary_encoder.h (on the gumstix at /usr/src/linux-headers.../include/linux) and rotary_encoder.c (not found on the gumstix, but a couple different versions on various code sites).  These files appear to be a part of the Linux kernel.  I think my best bet is to figure out how to build this kernel module and make it work with my hardware.