Findbugs performance fix: using entrySet instead of keySet

I turned on FindBugs to fail the build on errors, and as a result fixed those errors.  There is only one error category that needed fixing; performance and mostly just one thing:

> <strong>Inefficient use of keySet iterator instead of entrySet iterator</strong>
> This method accesses the value of a Map entry, using a key that was retrieved from a keySet iterator. It is more efficient to use an iterator on the entrySet of the map, to avoid the Map.get(key) lookup.

I will next attempt to look through other categories we might be interested in, such as CORRECTNESS, MT_CORRECTNESS, BAD_PRACTICE and STYLE but we likely have to weed through those to find the ones actually we care about. It is however good to point out that as far as findbugs is concerned, no security issues are currently found. 

You can manually run findbugs via `mvn findbugs:check`. All PRs should do so automatically. 
The Unmodifiable map has a reference to the services map.  And the TGT does.  If someone makes a change to the TGT the map that is backing the unmodifiable map can change. 

This is different behavior than what currently exists.  Basically the old way has a "snapshot in time" that is returned and  now its actually a map that can change (its just that the person who gets the unmodifiable map isn't the one that can make changes)

Does it matter?  I'm not sure.  I'd have to go back and try and remember why we did the snapshot in time.