I prototyped up something rather less complex a while back, and debugging it was an absolute nightmare. Are you sure you want to try everything at once? Might it be worth working up a number of much simpler arrangements, and working through them in turn and discarding the combinations that don't seem to offer very much? Then you might end up with something a little simpler to work with.