notes on associations and overriding: covariante reference returns and
exceptions