allow null reading levels for auditing
new hashes
rebuilt AR and lexile data, de-duped, and built a static cache
more NOLOCKs