A container for the basic configuration elements required to create
a Server instance.
MalformedURLException are rethrown as NestedRuntimeExceptions, so that
code that needs to access these values does not have to directly
worry about problems with lazy construction of final URL values.
Most values are determined durring first call to getter.