Improve how we multiplex scansions of words.

Instead of searching `pwd` for a file,
and if it doesn't exist running a subprocess to create the file
by linearly grepping a text file, and processing some more,
and then reading the file just created,
for each word in the input stream ---
literally one file in `pwd` for each word from user input ---
precompute everything into a sqlite3 database,
and open a two-way pipe to sqlite3
or to a shell script to syllabify arbitrary user input
consuming dozens of bytes of I/O over a pipe, vs disk.

This fixes the worst operational performance decision
that has been in this codebase from the start, since 2004.