Add a looping property to handle if an animation should loop
Use a list to store and get state information
Don't reset the animation when setting the same state

Unless looping is being toggled on.
Implement WalkLeft and WalkRight character states