Removed unused import
Made most desire and behavior serialization work.

What still doesn't work is collection serialization. Also, wherever you
have a @SerializeAs annotation you need to override the
getSeriliazeableData() method even if it's the same content. This is
due to the handling of annotations in java. You should not call the
super method in there!