COMMITTING FOR COMMITTING PURPOSES - CODE NOT TESTED.

Possible fixes for potential hazards:
Set direction only switched from + / -, but could be a potential pitfall if you didn't know what you were setting in the first place. Made the method a little bit smarter before it just flipped the signage.

 Some IDE warnings should be fixe, specailly around the array of "this.opts".

 Put in place to have the library do the timed portion of running and stopping.

 Should now emit events that might be useful.