moved all caches to Private; added protected accessor, and updated daughter classes accordingly. Also renamed variables for consistency with other classes