Increased testing coverage.

Split unit tests into smaller files and added additional tests to better
the code coverage. I also added a few examples that demonstrate the
ability to overwrite the prompter function.