John,
This is very cool. Having more options is always better. You seem to have a
lot of the pieces under control. The only advice I'll give at this stage is not to
ignore the multi-threaded aspect for too long. Certainly tackling the memory-
shared functionality (nsv_ and ns_config) is a solid first step.
Looking forward to seeing how this progresses!