made command router a map instead of an array