Renaming variable - ascii_source to table_source. This tells me a lot
more clearly what kind of data is represented. After all, there's a lot
of things that can be represented in ASCII.
Introduced at_least_an_empty_2d_array(result) as a means of pushing
the to_array method closer to a composed method where every statement is
at the same level of abstraction.