Simple template specialization working.

As of this commit, a simple factorial<x> template class works.
Still to come: Template functions, complex template specialization.

I believe the arg_key comparator needs minor refactoring to treat the `abstract' sentinel node as a wildcard.
Once that's done, I just need to make sure the correct arg_key used in specialization, and it should all work.