I get what you all mean, but it's also these little inconveniences which could be changed and make the engine a little more simple?
Like for example, I'm making all my game controls, I detect my jump button, I do my movements, now I want to do Dashing, so I have come up with a timer variable and detect if 100 milliseconds has passed since the last time you pressed that key.