Updated a ton, including caching, more methods, and started the restructure.