There are several issues involved here.
It is possible to encode an OpenType font with multiple glyphs for any given character codepoint (so multiple variant sigmas, epsilons, alphas, etc.). Dumbarton Oaks has an example font, Athena Ruby.
David Perry writes (November 2006):
1. The version of Cardo that is available on my web page http://scholarsfonts.net (v. .98) has a very large number of Greek variant letterforms. These are located in the supplementary private use area, beginning at U+F0000, so you won't see them if you look at the font with Windows Character Map or Word's Insert/Symbol (these don't handle anything beyond the BMP). You can see them with BabelMap or look at the user's manual beginning on p. 34 for a complete list.
2. In addition to the PUA codepoints, these variants are all accessible through the OpenType stylistic alternates feature if you have a program that supports it (Mellel and InDesign, as far as I know at the moment). It's frustrating that a mechanism exists that allows standard Unicode values for storage and alternate forms for display, but it is implemented in so few applications. That may change with the release of Windows Vista, which supports many OpenType features at the system level. Or it may not . . .