How to Write a Self-Installing Service