Try to handle NiBSAnimationNode

This is still incomplete guess work. Currently it seems as though flag 0x20
specifies whether the controllers auto-play (if on), rather than follow the
object's animation time.
Cleanup NIFObjectLoader some
Recognize and partly handle NiBSParticleNode
Add a ParticleSystemController
Store the base skeleton entity in MWRender::Animation
Use an array of objectlists, instead of one base objectlist and an array of 'animation sources'
Allow multiple ObjectLists to be created for Animations.

addObjectList may not currently be called outside of the related constructor.
Store iterators for start and stop keys
Use flag enums instead of hard-coded hex values
Merge remote-tracking branch 'zini/master' into nifogre
Treat the particle random values as the max differential
Merge remote-tracking branch 'zini/master' into nifogre
Merge remote-tracking branch 'zini/next' into nifogre
Use a method to set the visibility flags and render queue.
Recognize NiFlipController