BGE: What objects are Game Properties? This and/or how to access and change them in a script.

If you use the .getPropertyNames()-function of an object it only provides you with a list of the names of the properties. How can one actually change them? 

Also you could use a property actuator with the python controller but the property and python controller are on 2 different objects.
So it is about changing game properties of another object.
Use the object like a dictionary to access and change properties

# Access
print (object['propertyname'])

# Change
object['propertyname'] = 4