You guys should check out System.EnterpriseServices namespace. I think all of your complaints can be developed by yourself. ServiceController class is an object you can use to communicate to all of the services on the machine.

As for seperation of services you build vs. system services it is probably typical that you would see the login as the best way to seperate them. Local System login is usually reserved for system services. Not to say you can't use it yourself. However ServiceController also has a ServiceType enum that will provide the type of service, further ability to filter them.