Fixed an exception occurring if a sub-command is registered without a main command and the main command of the sub-command is tried to executed.
Now if a sub-command is registered without a main command, the log message will display the full name of the sub-command instead of only displaying the main command's name.
Replaced the System#getProperty method with Boolean#getBoolean method.
Removed the deprecation from Command#async option unless a new API is introduced.