Gideon : Optimized the method  matchAllEqualOrBothNonTerminalAndNotGoalOrOOV in
 src/joshua/decoder/chart_parser/NonterminalMatcherFactory.java by removing unnescessary String matches:
        - Check for equal, this method will not be
        called when equality is required)
        - Check that wordID is a nonterminal. This is assured in the way the method is used
          and should not be used inside the loop
        (But a cheaper check that throws an exception outside the loop has still been maintained
        , to be safe, and make the assumtpions explicit)

        - Also the getkeys, then get item for keys has been replaced by a method that works
        with the EntrySet directly, avoiding separate extra lookup of every nonterminal in
        the HashSet, as we already loop over all of them anyway

 modified:   src/joshua/decoder/chart_parser/NonterminalMatcherFactory.java