A Singleton class that manages all of the available commands and handles running them.
Builds a list of possible commands from the Command derivates list
Prints a list of available commands.
Runs the args against the first argument as the command name. If it has any errors it returns a false, otherwise it return true.
[Validate]