Added mouse control mode
Added stack-based handling of button reassignments