I believe that the synonym widening is part of the vision of Panda. From what I understand, Google was getting lots of bad press about abysmal results in the medical field. If you search for the official name of a condition you got excellent results. If you search for common names, or "what should I do for X" or "X treatments" the results were not so good. Content farms were targeting all the variations with poorly written content that didn't come from people knowledgeable about the condition or the medical field in general.
Google's algorithms are designed to:
1) Identify the content farms and penalize them
2) Allow reputable sites to rank for a wider variety of keywords, even those that they don't directly target.
Up until this year if you wanted traffic at all the relevant phrases in your niche, you would have had to create a page for each of them. Each page could really only rank competitively for one phrase. Its clear to me that Google has changed the rules. Now a single page can rank for the main target phrase ("X widgets") as well as synonyms for widgets and variations on the target phrase such as "Widgets in X" and "Where can I get X widgets".
Ranking for multiple similar phrases is a must for any website that depends on SEO. Creating a page per phrase may now be considered a sign of spam even though it has long been a great white hat tactic. This is an area in which I wish Google would come out with some advice for webmasters. As a webmaster, how do you let Google know about all the phrases that are relevant to your business? First it was keyword stuffing, then meta keywords, then page titles, then external anchor text, then page titles again. What is it now? If we are left to figure it out for ourselves, I fear that a handful of blackhats will figure it out and exploit it before it is well known in the whitehat community. Google is shooting itself in the foot by not releasing more information about the main signals their current algorithms use to determine relevance.