Optimize query for host and service

If a query is for exactly one host and source, do the lookup directly against
the map.
Return the correct value on no explicit match
Simplify because clojure
Deal with edge cases
Merge pull request #345 from eric/optimize-host-and-service-lookup

Optimize query for host and service