Added new PointerInput system that handles mouse/touch input for tappables and draggables instead of pushing the logic off to the components. Also moved some common code into System.js