Clean up problem 4

Gets rid of the clutter of supporting multiple length digits.  Think
about a purely functional solution/how to cut down on possible number of
iterations.  Think hard about what if anything is possible to rule out,
if we know based on existing info a calculation couldn't yield a
possible correct solution, just skip that iteration entirely.