making possible to override environment variables by system properties

When we are deploying in an environment like Amazon, we may need to update an environment variable on demand. Nowadays, we need to change the `environment.properties` in order to make this happen.

This pull request, allow us to override this properties using system properties.

We only allow user's to override properties that exists in `environment.properties` and do not allow to define only in system property.

```
#environment.properties
my.prop hello
```
```
//System.setProperty("my.prop", "bye");
environment.get("my.prop"); //bye
//System.setProperty("not.in.properties", "foo")
environment.get("not.in.properties"); //throw NoSuchElementException
```
Please, do not add more dependencies in the core without any good reason. Please remove this and use `Strings.isNullOrEmpty` from Guava library, that is already exists as dependency.