Slightly less madness
Cherry-picked the useful stuff from my dumb branch
Added keyreleased to the mix

We used to just always use keypressed for everything, but this
time we will have keypressed and keyreleased set variables on the
entity, and then let the entity decide what to do based on the state
of those variables.
Added a state machine to govern animation states
Merge branch 'master' of github.com-variousauthors:variousauthors/monstermash-jam-2014