[EDIT][#] Substantial changes to save system

[CORE][#] Each kAINodeObject has a internal class that can be used to serialise it when embedded in an XML behaviour (this is separate from the serialisable class the XML behaviour has to save itself) This class is sufficient to create the node and should form the basis of the template system in the editor
[CORE][#] Made all of the *ID classes support DataContract