Command structure rewrite

This was what I was thinking, still needs like an updated structure for parsing arguments, maybe an object with a  'sender' property