Revert "New Gem objects"

This reverts commit e4950265bcbe96d960c949125651e9449c288a10.
Revert "Revert "New Gem objects""

This reverts commit e93969b794dfd9321a0172abb66c1735e9b59f31.