devdocs notes on memory layout and runtime initialisation

Some notes I made while learning about runtime internals.
Maybe useful for other new developers.
But maybe misleading because eggnog :)

it's been given the name `singleton` and is optimized and used fairly heavily (`nothing` is a builtin  type that uses this). thus it's a pretty important type for understanding codegen.cpp and cgutils.cpp.