Fixed bug in once() method causing off() to fail. Cleaned up _on() logic a bit more.