Hey! Thank you so much for this very comprehensive reply!
Now I know what I was doing wrong. I wasn't doing
background := TBackground.Create
but simply
background.Create
!
Thanks again, great reply!