Added proper vulnerability code to characters and their specials

e.g. when Hero does DUA, he should be vulnerable to getting hit

What solved this problem was actually putting in a:
> self:performingSpecial = "none"
and > self:goIdle() line in Player:getsHit()
Otherwise the goIdle() is still ignored for some reason

but now unfortunately there's duplicate code for the vulnerability declarations - use the boolean, leave the original intact (performingSpecial) as it is used for other scenarios
Additional note for previous commit:

Added removeTimers() method for each character
When a special is cancelled, whatever that might follow (fire wall, ground crack) should also be cancelled. This involves removing all delayed timers
Fixed AI defend frequency
Fixed punch mechanic

Reset punch counter back to 0 after certain time (maxPunchDelay)
Make sure to never be able to do final punch when grabbing
Made grab punch a bit slower to balance out
Do not increase punch count while doing grab punch
Made throwing people as objects less damaging
Fixed the correct throwing and landing damage values
Show throw animation for 100 more ms (throwing opponent)
Proper keyboard walking/running
Fully fixed jump/hop (now called slow jump/fast jump) issue, tested with keyboard, renamed variables
Implemented "up/down" jumping
Currently set the displacement to be 85, feels around right
Also changed initial Y velocity, based on personal feedback, so as to emulate jumping "higher" for jumping more north while jumping "shorter" but landing more south