Move address instantiation logic down in the inheritance hierarchy