Legacy code removal

This commit tackles the initial part of two distinct though related tasks:

* Removal of the old serialization and deserialization code.
These are the toArray and newFromArray methods.

* Swicthing Entity, Item and Property over to contain value objects
rather than the internal serialization format.