I've been considering how to do something like this for awhile. Almost ready to start up work on the prototype :)