Started configuring for 3 different types of background. Added object public API. Almost done init function. Rest of implementation is commented out.