Adds the ability to step by a custom number, removes a leaking global

Just like the title says, I submitted this as an issue, but I was curious how things looked under the hood anyway.