element: Make return value of setters mean something
Setters return values should return %FALSE only when the value could not be set, not when unchanged or when the subclass handled it itself!
This patches makes it so the return value is meaningul by allowing
subclasses return anything different than TRUE
or FALSE
(convention
is -1) to let the subclass now that it took care of everything and
no signal should be emited.