Avoid direct ivar access for existing properties.
Convert remaining ivars to properties to avoid direct ivar access.
Enable -Wdirect-ivar-access; the codebase is now clean of this warning.