some small helps

I removed a spurious cl-labels in my alist impl.

And I ert'd the tests although I don't understand what you're trying to do with the test-product stuff.

The other suggestion I'd like to make is that you pull all the shadchen stuff into the top-level and drop the use of `eval-when` because then emacs can find the source properly and all of that.