This is a modified version of a patch from @nelstrom. Any mistakes are my own (@altercation), the fine idea and original work is @nelstrom's. This establishes a good default set of highlight values when viewing the status window using @tpope's fugitive plugin.
New gui menu structure; better organized, seperators, and new help links in submenus, particularly for visibiliy, contrast, and experimental submenus where the purpose of those settings might not always be intuitive.
A test for t_Co < 16 also snagged the gui despite t_Co not being defined in gui mode. Changed to t_Co == 8 for now, which is the only known case requiring bold off. There may be other t_Co values under 16 in low color terminals but I haven't found them yet, so this should be sufficient.
Visibility of listchars is handled by g:solarized_visibility but on the cursorline they can still be hard to spot if cursorline is on due to the cursorline background color. This new trailing spaces function, available in the menu or via emenu, should change the trailing space highlighting on only the cursorline. It doesn't work in call cases as, for example, the comments pattern in most syntaxes will override it.
normal visibility is now both less obnoxiously red and more visible due to a background used on trailing whitespace. normal is now set as default due to more acceptable highlighting.
Vim diff filetype highlighting
Was previously using a conditional check at highlighting primitive definition stage to identify low color terminals and assign standard s:b bold value to a bright-bold primitive. This removes proper formatting for other items such as status bar so a dedicated s:bb bright bold is required.
Turn off bold, regardless of user setting in g:solarized_bold, if the terminal emulator reports t_Co < 16, otherwise color is distorted.