Substantial work on TCC::Callable; committing messy state

I completely rewrote the function parsing regex. It now works, and it
uses some spiffy features from Perl 5.10. I would have preferred to
use Regexp::Grammars, but that doesn't work with 5.18, which I'm using
for development, so I wrote my own code to achieve what I wanted.
After all, I didn't need recursive descent parsing.

Of course, what's a commit without tests? And what are tests that
don't actually test real functionality? Alas, that has hung me up.
There seems to be a disconnect between how Perl pack()s things and
how C unpacks things, and I haven't grocked it, yet. In principle
the argument packs should work, but in practice nothing works
except integers. Pointers fail and doubles fail.

But, I have to put this down for now, and I'd rather commit the messy
state than leave it festering in my machine.