Change addContent() to setContent() for consistency with other setters.
Add getter and setter for siteSettings and themeSettings, and change helper context
to use a bound function for accessing these data to allow for deferred setting.
Callers should no longer access siteSettings and themeSettings directly.
Change error handling to throw custom errors instead of swallowing the error
and logging. This gives the caller the opportunity to take action based on
the error condition.
Remove logging interface since we don't use it anymore.