change delegated events to direct events (faster/works better with
hammer) + make link handler as utils