make attributes with builder also lazy so that interdependencies are less problematic