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]
I'm not well-versed in the migration stuff, but I'm thinking that we probably also need to do some sort of data manipulation as part of this. If the user already has services in the their DB we'll want to update all those records and copy the `name` field to the `internal_name` field. Not sure if that logic is appropriate to put in the migration file or if it goes someplace else.  Maybe @alexwelch can weigh-in.