Changed argument requirement

Previously exactly one argument was required. Now the requirement is "not zero," in preparation for commands that take their own argument(s).
Added switchto <branch> functionality.
Tango now re-bootstraps itself after updates
MAJOR refactoring
Refactored the way colors are handled