Ben's golden rules:
1. Before creating a data member, check if it is already created (especially on recurring method like this).
2. Before accessing a data member, check to see if it is null.

Luke's golden rule:
1. If #2 in Ben's rule causes too many null checks, we might as well instantiate the data member as part of the owner's construction.