Refactor internal API for Services to match v1beta3

First commit is services (working unit and integration).
Not deliberate, but after testing I ascertained they are functionally equivalent.  That said, I restored the empty selector because it is explicit for the test.