I tried ncm's coding challenge, here is a 21 line solution plus some boiler plate. The bottom two screen shots show execution. The words "t" and "d" denote, table driven carry computation and data driven carry computation respectively. "second" is the top-level increment function.
