ENH: Remove DIY_Datatype ivar

There is no need to hold DIY_Datatype ivars, memory management
of these ivars is handled by DIY internally.
ENH: Separate static and dynamic DIY datatypes

Split the DIY datatypes to two types. DIYHaloItem
and DIYHaloParticleItem. This is done to avoid the
issue with DIY not handling correctly variable size
data types.
WIP: Add haloExchange example with DIY