Actually, there was a time when terrific was used to denote terrifying. The OED marks the modern denotation of "marvelous" as beginning around 1930, so this usage was perhaps coined by the flappers, who were cool, hip, and on the ball. According to the OED, this modern usage, now almost always denoting "marvelous", is a colloquialism.
As for awesome, the modern use you've noted is first recorded in the OED in 1980, which probably indicates that the American hippies coined this particular use during the 60s and 70s. The OED marks this usage as slang, though this is now the most used denotation.
As to why this has happened: English is a living language. This means that new words are still finding their way into the English lexicon, and the denotations and connotations of existing words are still migrating [changing meaning] with time. Compare this with a Latin word--Latin being a "dead" language--the denotation or connotation of which will never change no matter how much time passes.