Add a weapon state to the character controller
Move getStateInfo into the character controller
Merge remote-tracking branch 'zini/master' into animations
Implement handling weapon states
Merge remote-tracking branch 'zini/master' into animations
Merge remote-tracking branch 'zini/master' into animations

Conflicts:
	apps/openmw/mwmechanics/character.cpp
Don't store camera nodes, we don't need them.
Only load one Nif for Animation objects

This breaks quite a bit, but it's needed for the transition to using the
.kf files.
Allow loading multiple animation sources

Animation sources are treated differently from base objects. When given
"path\file.nif", base objects will look for "path\xfile.nif" and use that
if it exists (falling back to the original name if not found). Animation
sources will instead use "path\xfile.kf", ignoring it if the file doesn't
exist.
Only support NiSequenceStreamHelper as a Kf root

Newer versions of the Nif foramt may have other record types, but we don't
support those.
Build a skeleton for Nifs that have a matching .kf file
Merge remote-tracking branch 'zini/master' into animations
Fix an outdated comment
Use a map of active layers instead of an array

A bit of an upheaval. Each animation is now a "layer", instead of each layer
having an animation. Incidentally, this is much closer to how Ogre handles
animation states.

In the future, each layer will have a priority, which will be used to determine
which one affects a given bone group (which we currently only have one of).
Rename animation layers to animation states
Store the AnimSource in the animation state
Parameterize the number of bone groups
Figure out which animations to play based on priority

Bone group will also be taken into account later.
Don't explicitly track the last position
Search more aggressively for an animation velocity