These are primitive abstractions for insurance that will be
improved upon over time.
Some notable TODOs:
\begin{enumerate}
\item Enforce naming convention;
\item Support scalar results;
\item Fail on zero premium unless explicitly stated;
\item Fail on negative premium (use a credit template);
\item Rounding direction (currently only nearest); and
\item Credit and surcharge.
\end{enumerate}
\todo{Template to abstract these {\tt rate-each} generation
templates.}
\ref{_factor_} defines a calculation that results in a factor
which will later be used in a product.
There are special considerations for these types of values---%
generally, they should not have a value of~$0$ if some sort of calculation
condition or lookup is not met,
as that would have the effect of wiping out premium.
If zero is desired,
\tt{@allow-zero@} must be set to \tt{true} to explicitly permit it.
a description (@desc@) is required for factor
`'
false
a value of #0 for @default@ is not meaningful;
use @allow-zero@ instead.