[JBIDE-15766]:Remove refresh of all IEnvironmentVariable on add/remove actions

Please reference the following change log:

Removed update calls from EnvironmentVariableResource.destroy,
ApplicationResource.addEnvironmentVariable,ApplicationResource.addEnvironmentVariables,and
ApplicationResource.removeEnvironmentVariable.

Added
ApplicationResource.removeEnvironmentVariable(IEnvironmentVariable)

Renamed environmentVariableByName to environmentVariableMap

Updated getOrLoadEnvironmentVariable to work check for emptiness of
environmentVariableMap

Updated loadEnvironmentVariables to work on environmentVariablesMap, and
return it, in contrast to a locally-scoped version that did not persist.

Corrected test failures due to omitted changes to instances methods for EnvironmentVariableResouce and ApplicationResource.

Updated remove methods to use remove..(IEnvironmentVariable) and
ApplicationResourceIntegrationTest to use
Application.removeEnvironmentVariable(IEnvironmentVariable) in testing.
Added integration test for
removeEnvironmentVariable(IEnvironmentVariable)

Updated ApplicationResource.addEnvironmentVariables(Map<String,String>) to filter the incoming map key/value pairs if they
are duplicate keys, without different values. This update should resolve unecessary update DTO requests being generated.

(Rebased up to Nov 12 since the original PR got behind.)

Corrected possible logical error that was accidentally included in addEnvinronmentVariables(Map<String,String>), with the original PR. [if(testVar!=null)...else....]

(Rebased again, to support merge with most recent version of upstream master: 13-NOV-2013)

Corrected ApplicationResource.removeEnvironmentVariableByInstance(IEnvironmentVariable) and ApplicationResource.removeEnvironmentVariable(String) to correct failing test(s).