add overlay delegate callback for render completion
formatting tweaks
rename state for clarity
move delegate adoption check to point of need