Merged nearly identical classes.
For feature request 2959718.
Authored by: jimwinston 2010-02-26
Parent: [r704]
Child: [r706]