Revert "Always refresh in getEnvironment() (to mitigate the cache issue)."

This reverts commit be87592c6c04aa9dc9a721fa90dd7dacf7da05fb.
Move description coloring logic to CustomTextDescriptor.
Log the selected project/environment in debug mode.
Nicer error if checkout fails.
Use Symfony Console's built-in method to get the terminal width.
Cleanup of selectProject / selectEnvironment methods.