why is this a map?? you only ever assign true to any keys. The thing is, a map doesn't guarantee order, so the commands can be parsed in any order. So when we come to get the value for a particular command below, we'll - most of the time - be getting the value of the wrong command. Surely this should just be a []string?