correct # of random chars and fix test runner

The last PR fixed the regex; however, that fix broke the tests since the # of characters generated was incorrect. Travis did not catch it because something changed on the Travis side such that `basename -a` no longer works. I changed the `Makefile` to not use that technique (it was a premature optimization anyhow) and instead use `xargs basename`. Oddly enough, Travis did not break when `basename -a` failed. It failed silently in that the process still ended with a status of 0.

Let's see if Travis likes this rendition.