More progress. Just need to write save_service() and then I'll be ready to start on the dispatch functions.