* Add ability for service to report the system managing the service
* Clarify that the output of SystemName should return the same value as Platform in most cases
* Rename SystemName to Platform to match the rest of the package
* be a little more clear in the Platform comment
* update command execution to support returing error codes, and stdout
add function to service interface to support returning service status
clean up places where strings were being converted to strings
* Spelling fix
* Simply service Status method
Add stopped detection to launchd
Switch to case statements
Return ErrNotInstalled in situations where we should
Breaking apart each service reduces the overall number of branches
in the code, but increases duplication. Duplication can be taken
care of in follow-up commits while still keeping the clarity of
linear code.
Also expiriment with code that would allow the user to add or remove
systems. Still expirimental and not exposed in the API.