original code from shinytoylabs.com
partial rewrite to remove jquery and DOM dependencies, exports as node module, expose some more elements for debugging (cache) and external config (wordlists, constructs)