Update services func to support filtering by health check.

Allows one to query services by including an optional health status. See #65.

Currently only `"passing"` and `"any"` are supported but it should be easy to expand the available health check status options in the future once a consensus has been reached about what's required and how the filter syntax might look.
Go's text/template is actually somehow magical... If you change that signature to return `([]*util.Service, error)` and `return nil, err`, the template will also fail. It's highly unlikely and seems like an impossible codepath, but I would rather crash the template than the process.