Move command dispatch into full module