Are there any special free online dictionaries to help with the following ambiguities I'm having? How about hardcopy books?

1) Is there a dictionary that explains precisely the difference between verbs that differ in only their prefix? For example, what's the difference between жечь, зажечь, сжечь and Обжечь? Or what's the difference between убить and губить?

2) How about a dictionary for words that seem similar but perhaps are not? For example, what's the difference between прогуливать and пропустить? Or the difference between застенчивый and стыдливый?