Plug some potential memory leaks in DreamOverlayContainerViewController

updateBurnInOffsets was never cancelled on view detach as lambdas are
never equal, so it continued running continuously even after the dream
stops.

BouncerlessScrimController callbacks were never removed. This is a bit
more minor, but BouncerlessScrimController seems to be retained
regardless of dream state, causing the callbacks to stack up. It's
safer to clean up after ourselves and remove the callback once we no
longer needed.

Bug: 338532926
Test: atest DreamOverlayContainerViewControllerTest
Flag: N/A
Change-Id: I6fc40e05704a94f7d4467f3474b1dacd70639846
2 files changed