Debug info changes & thread-safe singletons

Changes to debug logging in order to understand the call depth of items getting built and also the time to construct and set the property values on each item.