add internal_name to service

We want users to be able to update service.name, but that value is used within the unit file. This introduces a new field on the service called 'internal_name' which is immutable and will be used in places where a string is used a unique identifier.

[finishes #70098068]
Updated to add another testing case.