Add active class if the mouse is down.
Refactor how to detect left mouse button down.
More optimization. Move target function to Util
Fix left button mouse detection
Remove timeouts.
User Date.now() when registering an event and then Date.now() when detecting a simulated event to avoid conflicts with how Firefox reports the timeStamp property on events.
Resolves #1