Thanks for those suggestions, they're definitely putting me on the right path.
In terms of using an x86-based solution, I have some constraints that require that whatever gets implemented be as power-efficient as possible so a full-blown computer may not be as efficient as we're looking for...