add screen tracking; refactor
refactor more, fix events slightly