Fixed bug where numbers between 10^31 and 10^3003 were falling through the wrong flow at line 122, resulting in wrong naming.
Made cwdict be tuples of 3 length for prefix, name, suffix. Refactored
match_joiners() and relevant part of orders() to comply. Introduced
current_name to hold output of hunds() in digits(). illion_append now
relies on param level being zero for 'illion' and non-zero for 'illi'.
This is the level of recursion in orders(). Fixed recursion call for
numbers higher than 10**3003. Added new tests. Seems to work.