fixed bug where eager singletons could return null