Classes for allocating objects lazily