Rewrote command processing

Added support for super common flags (e.g. -v for version) that are likely to be assumed by most *nix users.
Also made command (args._) parsing more straightforward and easier to understand.