Kerosene is honestly the best solvent to clean the chain. I use the HondaLube chain oil product and it's excellent. Just remember to apply it to a warmed-up chain and give it at least a few hours to soak in.
I find that S100 does a great job removing grease from painted body parts, frame and the engine. For under the fenders and chain guard, I have had good luck with a 50/50 mixture of Simple Green and water. Just remember to avoid letting strong degreasers on the chain for obvious reasons. One or the other seems to take off everything I've come across so far.
For the exhaust, I use Wenol metal polish after removing stubborn dirt with a Scotchbrite pad. It's best to start with the pad safe for non-stick cookware, using the harsher dark green pad only for the truly stubborn stuff, to avoid unnecessary scratching. Wenol is often used to polish high-end copper and steel cookware. Best of all, it doesn't require an ton of elbow grease to get great results. It's got almost cult status among cruiser owners. It works so well that several riders have assumed my 'Strom was new because the recently polished front header pipe wasn't discolored.