Refactor the upstart exists to use once source, and fix the tests so it doesn't create a braindead empty upstart file first.