Actual namer functionality.
Base class for naming contexts, providing the basic API consisting of naming calls and ability to take descendant naming contexts.
Class for the (global) naming stack object, which provides a way to push and pop naming contexts as functions are called / finished.
Dummy implementation to allow for naming annotations in a non-Builder context.