add a less janky implementation of servicec contexts