this eliminates the expensive database hit on every request for a line. the cache is loaded when the module loads and learning new lines should add the appropriate word to the list. seemed like a pretty good compromise