Added touch controls and a common controller interface