Proper packaging and more services

What happens if `service` or `tests` are `None`? It looks to me like you really expect something from `service`, or that you want to bail out if `service` is `None`.