While not actually setting this up as you want I think tht most can be accomplished with attributes. As this is more how they are designed than many try to use them for. The images can be added in the attribute controller at the bottom for one at a time using the "Swatches" insert thing.
Descriptions could be in the main area and theough custom code added to the swatches



