fix: delete cascading defined by relationships

The bug is caused by the usage of the same variable name as function
input parameter and later as cycle variable, the latter replaces
original input parameter making remaining function code potentially
produce an error (even fatal error)
fix: do not store null values

This fix makes Dictionariable behavior not to store null values so it is
becomes possible to remove value previously stored in meta by calling
$entity->setValue('PARAMNAME', null)
fix: person timezone setting

Make person timezone setting to accept non-integer offsets, i.e. not
only round hour offsets.
VARCHAR is picked over a float point type for the setting to be able to
accommodate string timezones which would be required if anahita will
have support of timezones using daylight saving
fix: prevent formatting function from modifying input date
Merge branch 'fix-core'