Create abstract class with required fields
Make Versions a proper class

No point in dropping down below MongoEngine's normal usage.