Fix events handling for relation prototypes

Prototype relation and relation setItem objects are not bound to any
object, algorithm assumed that every relation is bound to one.
`codify` util, codifies dbjs values

If value is DBJS object then it returns 'getObject("$objID$")'
-- lint
Moved snapshot export logic to history

Provided script (within /scripts) to generate models file based on
current snapshot. Currenlty it's intended just for initial schema model
and doesn't produce events
Fix null handling in simple relation's $setValue
Do not export in snapshot undefined values
Unserialize for stringified events

Remove messageSplit, it served similar purpose in older version
(still it most likely didn't work properly and wasn't used)
Call objects._get directly
signal._remove

Removes object from it's namespace, and emits remove event.
Improve getPropertyNames relation detection