Start sketching out what the background service should look like

There will likely want to be two services, one for the
"system-level" stuff, the other for the session-level stuff.