show informative error when serialize
fail to set property.
(cherry picked from commit 11d55ec)
* add more tests.
* clean up code.
(cherry picked from commit 7c6c384)
prevent exception on deserialization error.
(cherry picked from commit 582d6be)
EdgeWrapper use AbstractDbObject instead of DbObject.
(cherry picked from commit ac8dc92)
bug fix AbstractIDGetter cannot be serialized.
(cherry picked from commit a87fbc7)