I do understand why these words could be offensive given their previous usage, however I think the words have a different meaning now and that the majority of people do not know or consider that these words were once used to classify degrees of learning disability.
The meanings of and connotations associated with different words can and does change over time. Sometimes this is a negative thing, for example when medical terms (eg: spastic) can become disablist terms used to offend or belittle somebody. Perhaps however it is positive that the words psychology tried to adopt from Greek/Latin (thanks for being a pedant Theycallmemellowjello!) actually went back to their original meanings rather than being terms for people with learning disabilities and that people don't use them in that disablist way anymore.
I completely agree there are some offensive, disablist terms which should be avoided. I think when people use the terms 'spastic' or 'retard' to describe somebody foolish they are being horribly disablist. I think if most people were asked to define these terms they would refer to disability in that description.
However, I don't think that is the case for the word moron (or idiot/ imbecile for that matter). I think if most people were asked to describe a moron they would say a stupid person or a person who does something stupid but I don't think people would specifically refer to that person having a disability. I do not think most people think of disabled people when they hear the term moron.
Obviously if people are using it in that way or with that meaning behind it then it is offensive and disablist, but I think the people who use it in that way are in the vast minority unlike, for example, people using terms such as spastic, retard or mong which are all, in my mind, unforgivable.