Allow the new generic service marker interfaces to be used to detect request types

I was trying to write a plugin that follows the RegistrationFeature approach. e.g:
```
appHost.RegisterService<StoreRegistrationService>(RegisterRoute);
```
(This allows plugin users to change the route the service listens at).

The problem was with the new SS API there is no generic `IService<T>` to detect the request type. And so this method https://github.com/ServiceStack/ServiceStack/blob/master/src/ServiceStack/WebHost.Endpoints/AppHostBase.cs#L282-L304 would not register the service (unless I used the DefaultRequestAttribute). But because I was using the IGet<> marker interface I thought this was redundant.

So this is my attempt to allow services marked with any of the IGet<>,IPost<>, etc interfaces to work when registering via the explicit register at call. The unit test doesn't test that `public void RegisterService(Type serviceType, params string[] atRestPaths)` method directly, but rather only the fact that https://github.com/ServiceStack/ServiceStack/blob/master/src/ServiceStack/WebHost.Endpoints/AppHostBase.cs#L284 doesnt return null. Not ideal, but couldn't find an easy way to test that method.