Convenience functions

Among other things, add `stack-core-filter-data' to create subfilters within elisp itself.

Also move test suite to its own directory and create a means to load that data quickly.
Oh, don't stress over it. I just wanted to mention it specifically because it's something where emacs is different from other lisps. I didn't mean for you to go fixing anything. :-)

 Besides, a loop would just be faster in principle, we'd have to do tests to find out the difference here, and it would probably be negligible. I still prefer recursion over everything else on most of my approaches, just because it feels more intuitive. :-)

In any case, I *really* don't care about such small speed optimizations right now, specially at the cost of making the code less readable. We can leave a TODO comment as a reminder to test the speed later, if we're ever in the business of small optimizations.