Typed-function's sort order/matching algorithm was interfering with
template resolution. This commit solves the difficulty by moving the
"catchall" implementations that implement generation of new template
instances into a separate "fallback" typed-function universe, so that
Pocomath can control exactly when that is searched.
Removes a couple of the matching anomalies already noted in the tests.
Also extends return types to somewhat more functions.
Includes a full implementation of a type-homogeneous Tuple type, using the template types
feature, as a demonstration/check of its operation.
Co-authored-by: Glen Whitney <glen@studioinfinity.org>
Reviewed-on: #45