More accurate rpg character model in terms of combat.

- More accurate rpg character model in terms of combat. Implemented
movement smoothing into the character model. Model continues movement
animation for ~200ms after movement has completed, so that subsequent
movements look more natural.

- Animations can now be provided a Runnable target to invoke when a
particular event has been raised in the animation, specific to the state
of the animation. I.e, PlayToEnd state will invoke the runnable when it
reaches the final frame in the animation. PlayWrap will invoke the
runnable when it reaches either ends of the wrap.

- Resolved error in client. When a local attack task was initiated, the
client should have created an attack task with 'no behaviour,' and
waited for the server to dispatch an attack task via visitors. While the
client did this, it returned 'true' for local a local AttackTask's
doAttack method, notifying observers about an attack that didn't occur.

- Resolved in client RpgCharacterModel. If an animation was played (once
again) while the same one was currently being played, it would result in
a reset to the start of the animation. This caused some glitchy movement
animations for networked games where movement tasks were consistently
re-issued from the server.

- Resolved error in enemy and hero scripts in the way they managed
combat.

- Resolved error in the way server read scripts from the terminal. The
script should execute after three newlines sequenced one after the
other. Server would execute scripts even if the lines were not one after
the other.

Jeremy. Allen. Wildsmith